我有两个列表:
a = [[1, 0.5], [1, 0.5], [2, 1.0], [3, 1.0]]
b = [-0.5, -0.5, 0.0, 0.0]
现在,对于a[i]
中的每个列表a
,我需要比较列表a[i]
的第0个索引中的值,并将其与的第0个索引进行比较。位于a[i+1]
中的列表。如果它们相同,那么我需要在列表b
中添加相应的值,即b[i]
和b[i+1]
。
例如,
在上面的列表中,我有a[0] = [1, 0.5]
和a[1] = [1, 0.5]
。我们看到这两个列表中的第一个元素都是1
。因为它们相同,所以在列表b
中,我想将位于b[0]
和b[1]
中的元素添加在一起,即-0.5
和-0.5
但是,a[2] = [2, 1.0]
和a[3] = [3, 1.0]
。并且,由于这两个列表的第0位不匹配,因此无需对列表b
执行任何操作,即,我不会将b[2]
和b[3]
中的元素一起添加。>
我该如何解决?
答案 0 :(得分:1)
a = [[1, 0.5], [1, 0.5], [2, 1.0], [3, 1.0]]
b = [-0.5, -0.5, 0.0, 0.0]
# through second to last element
for i in range(len(a) - 1):
if a[i][0] == a[i+1][0]:
print('for i=={}: {}'.format(i, b[i] + b[i+1]))
else: # for complete output verification
print('index "{}" missed'.format(i))