CodeAcademy的Python课程让我学习循环函数,我不明白结果。目标是查看一个列表是否是另一个列表的镜像。i、 e.[1,2,3]至[3,2,1]
20分钟后,我看了解决方案,我不明白为什么这不是返回真的每一次?地址:
def reversed_list(lst1, lst2):
for index in range(len(lst1)):
if lst1[index] != lst2[len(lst2)-1-index]:
return False
return True
“return True”缩进到与“for index”相同的级别,这将覆盖上一行返回的任何值。你知道吗
或者,当我在“if”缩进处引入“else”时,所有内容都返回True:
def reversed_list(lst1, lst2):
for index in range(len(lst1)):
if lst1[index] != lst2[len(lst2)-1-index]:
return False
else:
return True
有人能帮我吗?你知道吗
如果您的语句
if lst1[index] != lst2[len(lst2)-1-index]
语句发现任何不匹配的项,那么我们的函数将立即结束。不再执行代码。你知道吗当您添加else语句时,这意味着如果有任何匹配项,函数将返回True,并且不再执行任何代码。你知道吗
return False
导致函数完全退出,同时返回False,因此在这种情况下永远不会到达return True
行。放置早期返回语句是中断函数执行的一种方法您提出的第一个和第二个代码提供不同的输出。 您应该知道函数只能使用
return
一次。你知道吗有帮助的是打印中间结果。你知道吗
1个
二
用添加的行运行我的代码,打印中间结果。您将看到第二个函数将只迭代第一个元素,然后返回
True
或False
。你知道吗相关问题 更多 >
编程相关推荐