修复Python列表全偶数检查函数:循环仅检测首个元素即退出问题
解决方法
问题出在return True的缩进位置——它被放在了for循环内部,导致程序检查完列表第一个元素后就直接返回结果,根本没机会遍历后续元素。
只需要调整return True的缩进,让它和for循环处于同一层级,这样只有当循环完整遍历完所有元素(且未发现奇数)时,才会返回True:
def all_even(lst): for i in range(len(lst)): if lst[i] % 2 != 0: return False return True
修改后,循环会逐个检查列表中的每个元素,只要遇到奇数就立即返回False;如果所有元素都检查通过,循环结束后才返回True,完全符合需求且没有新增代码行。
内容的提问来源于stack exchange,提问作者Haruv
相关产品推荐
相关产品推荐

