返回值对的索引

时间:2016-11-01 17:27:59

标签: python list loops for-loop

我正在尝试创建一个带有数字列表和数字b的函数,并将打印列表中所有值对的索引,总和为b。到目前为止,我的代码包括列表操作

{{ civilite }} {{ nom }} {{ prenom }}?

它应该像这样运行

def pairSum(a,b):
    for i in a:
        for j in a:
            if i+j==b: 

请注意,它返回列表中值的位置而不是实际数字,这是我无法解决的问题。

1 个答案:

答案 0 :(得分:1)

使用enumerate

for i, x in enumerate(a): #i is index of x
    for j, y in enumerate(a[i+1:], start=i+1): #j is index of y
        if x+y == b:
            print(i, j)

a[i+1:]是为了防止重复并阻止将值添加到自身。

文档:https://docs.python.org/3/library/functions.html#enumerate