2024-03-29 14:21:21 发布
网友
我对python很陌生,我有一个小问题。在
我需要将两个二维列表组合成这样:
list1= [[some,1],[thing,5]] list2= [[some,1],[other,1],[thing,5]]
结果应该是这样的:
您可以使用^{}:
>>> from collections import Counter >>> >>> list1 = [['some',1],['thing',5]] >>> list2= [['some',1],['other',1],['thing',5]] >>> >>> [[k,v] for k,v in (Counter(dict(list1)) + Counter(dict(list2))).items()] [['thing', 10], ['other', 1], ['some', 2]]
或者如果可以接受元组列表:
在这里使用元组似乎更有意义。在
你应该考虑你是否真的需要最终的结果是一个列表。如果顺序不重要(正如您所说的那样),那么字典Counter(dict(list1)) + Counter(dict(list2))可能就足够了。在
Counter(dict(list1)) + Counter(dict(list2))
>>> Counter(dict(list1)) + Counter(dict(list2)) Counter({'thing': 10, 'some': 2, 'other': 1})
您可以使用^{} :
或者如果可以接受元组列表:
^{pr2}$在这里使用元组似乎更有意义。在
你应该考虑你是否真的需要最终的结果是一个列表。如果顺序不重要(正如您所说的那样),那么字典
Counter(dict(list1)) + Counter(dict(list2))
可能就足够了。在相关问题 更多 >
编程相关推荐