首页 > 解决方案 > 函数不返回 false 值

问题描述

True如果这个问题很愚蠢,我深表歉意,但如果当前项目等于下一个项目,我会尝试返回,否则返回False

def isSame(array):
    for index, number in enumerate(array):
        if number == array[index + 1]:
            return True
    return False

print(isSame([1, 3, 2, 6, 5, 3, 2]))

如果我这样调用函数,则返回 True 值:isSame([1, 3, 2, 6, 5, 3, 3])

但是当我这样称呼它时:isSame([1, 3, 2, 6, 5, 3, 2])该函数不返回任何值。

标签: pythonpython-3.xfunction

解决方案


Zips 在这种情况下可能很有用,这基本上采用从 1 开始的所有值的列表,然后是从 0 开始的所有值的列表,将它们组合成一个变量,然后遍历这些对的列表并检查它们是否相等如果它们是则返回 true,否则返回 false,因为这是一个 listcomp,所以它将它作为一个列表返回。 z=lambda g:[x[0]==x[1] for x in zip(g[0:],g[1:])]


推荐阅读