【发布时间】:2018-11-25 21:32:49
【问题描述】:
有一个函数和一个for循环:
def helper():
return [1,2,3]
for i in helper():
print(i)
我想知道辅助函数是否只会在 for 循环的初始化时被调用一次。正如我在想,如果我调用函数并将返回数组提前分配给一个变量,它将在 for 循环中使用,如下所示:
def helper():
return [1,2,3]
temp = helper()
for i in temp:
print(i)
时间复杂度更低吗?
谢谢!
【问题讨论】:
-
不,这几乎是一样的,除了你的第一个例子不需要临时变量,所以看起来更干净,更容易阅读等。如果你不确定这样的事情,只需输入打印代码中的语句以查看发生了什么。
-
只评估一次
-
您可以通过在
helper()中打印一条消息来自己测试这一点,然后查看该消息是打印一次还是多次打印。 -
是的,添加一些非常简单的语句
print是您从wondering到knowing所需的全部内容
标签: python for-loop time-complexity