关于Python中的生成器
这个问题在这里已经有了答案:
call print(next(fib(6)))
总是创建一个新的fib
发生器实例,并从中产生一个值,然后丢弃它。
另一方面:
f = fib(6)
print(next(f))
print(next(f))
print(next(f))
创建发生器fib
的实例f
并从中产生三个值。
此外,使用max
作为参数名称是因为至少在本地范围内屏蔽了具有相同名称的内置函数。
上一篇: About generator in Python
下一篇: what's different about loop data with yield and without yield