【发布时间】:2018-12-15 08:24:30
【问题描述】:
这个问题相当学术。我在python中遇到了以下行为:
此代码:
def dosth():
print("new")
for n in range(0,10):
return False
dosth()
实际上给了我 10 个打印件而不是一个。那么函数在return语句之后是否因为没有break而递归调用自己呢? 如果我在 return 语句之前休息一下,我仍然会得到 2 个打印,而不是只有一个。 有人可以解释这种行为吗
【问题讨论】:
-
我知道 - 这不是我想使用的代码,这只是好奇。是的,n 正在循环 10 次调用,但它应该在第一次调用之后返回,那么怎么会有另一个打印?此外,打印甚至不在循环中。
-
所以当我尝试这个程序时,我只看到它打印一次。你确定你的格式是一致的吗?在此处检查输出:colab.research.google.com/drive/…
标签: python python-3.x return