如何检查两个元组列表是否具有相同的第一个值?
list1=[(1,3),(3,2),(5,-5),(7,7)]
list2=[(1,-2),(2,2),(4,8),(5,6)]
我想添加list1[i][1] to list2[y][1] if list1[i][0] is = list2[y][0]
所以对于
的例子列表(1,3) and (1,-2)
and
(5,-5) and (5,6)
它应该添加3 +( - 2)和-5 + 6
答案 0 :(得分:0)
您似乎正在尝试重新发明词典,为什么不使用它们呢?这将大大改善查找时间
dict1 = dict(list1)
dict2 = dict(list2)
result = {k1: v1 + dict2.get(k1, 0) for k1, v1 in dict1.iteritems()}
但是如果你真的想要使用列表:
for i, (i0, i1) in enumerate(list1):
for y0, y1 in list2:
if i0 == y0:
list1[i][1] += y1