def evenchecker(lst):
for number in lst:
return number%2==0
else:
pass
我正在尝试创建一个函数,用于检查列表中是否有偶数,或者是否有任何可匹配项。当我将第一个数字保持为偶数时,它会起作用,但当我将第一个数字保持为奇数时,它会分开,它只会返回false,对于后续的偶数,它不会报告true
有人能解释一下为什么会发生这种情况吗?我是一个编程的绝对初学者,从我的课程中学习。我确实找到了解决办法
def evenchecker(lst):
for number in lst:
if number%2==0:
return "The list has an even number"
else:
pass
这个一直查到最后一个号码
第一个循环立即返回。它不会看名单上的任何其他部分。你的第二个例子做得很好。
零件是绝对无用的。移除它们
请注意,您可以在单行中执行该操作:
您必须区分函数的结果是什么以及如何实现。您想知道列表是否包含偶数。这意味着无论哪种情况,您都必须迭代列表中的所有数字
由于
return
立即返回结果,因此该函数只测试列表的第一个元素是偶数还是奇数。如果第一个元素为偶数,则返回true但是原始代码(稍加修改)
这将检查列表中的每个元素的数字是否为偶数(%modulo运算符),然后返回。所以“如果”在这里非常重要
相关问题 更多 >
编程相关推荐