python:求一个lis的两个数的和

2024-04-24 07:02:51 发布

您现在位置:Python中文网/ 问答频道 /正文

这就是我到目前为止得到的结果,当没有这样的值时,如何使它返回False?你知道吗

def pairSum(l, s):
    a = 0
    b = 1
    for i in l:
        if l[a]+l[b] == s:
            return True
        a=a+1
        b=b+1

编辑:我刚刚意识到这个函数只能找到两个加在s上的连续数字。我要创建一个函数来确定列表中的任意两个数字加起来是否等于s,而不是两个连续的数字。抱歉给你带来了误导。你知道吗


Tags: 函数infalsetrue编辑列表forreturn
1条回答
网友
1楼 · 发布于 2024-04-24 07:02:51
f = lambda x,y: x+y

def func(l, s):
    for i in range(len(l)-1):
        if f(l[i],l[i+1]) == s:
            return True
    return False

如果列表的两个连续数字相加得到s,则返回True,否则返回False。你知道吗

如果要检查l中任意两个数字的加法是否与s相加,那么

from itertools import combinations
def sumPairs(l, s):
    for a, b in combinations(lst, 2):
        if a+b == s:
            return True
    return False 

相关问题 更多 >