好的,有没有办法从函数中返回一个值 - return
的方式 - 而不是停止函数 - return
的方式?< / p>
我需要这个,所以我可以经常保持返回值。 (time.sleep()
或其他任何提供的延迟。)
答案 0 :(得分:5)
我认为您正在寻找yield
。例如:
import time
def myFunction(limit):
for i in range(0,limit):
time.sleep(2)
yield i*i
for x in myFunction(100):
print( x )
答案 1 :(得分:0)
def f():
for i in range(10):
yield i
g = f().next
# this is if you actually want to get a function
# and then call it repeatedly to get different values
print g()
print g()
print
# this is how you might normally use a generator
for i in f():
print i
输出:
0
1
0
1
...
9