现在,我试图只包含两个参数,我一直在使用下面的代码。
for i in d2:
for j in D1:
x[j] = d2[i]-D1[j]
for k in D1:
if (x[j] == D1[k]):
break
print d2[i] = D1[j] + x[j]
错误
当我尝试运行代码时,出现了此错误:
Traceback (most recent call last):
line 11, in <module>
x[j] = d2[i]-D1[j]
IndexError: list index out of range
答案 0 :(得分:1)
检查所有对的总和在另一个列表中(在我的头顶):
import itertools as it
D1 = ...
D2 = ...
def my_check(list1, list2):
for x, y in it.combinations(list1, 2):
if x+y in list2:
yield x, y
for x, y in my_check(D1, D2):
print("{} = {} + {}".format(x+y, x, y))