可能重复:
解释了Python yield关键字
有人可以向我解释一下yield语句在这段代码中实际做了什么:
def fibonacci():
a, b = 0, 1
while True:
yield a
a, b = b, a+b
Run Code Online (Sandbox Code Playgroud)
for number fibonacci():#使用生成器作为迭代器; 打印号码
到目前为止我所理解的是,我们正在定义一个finonacci()没有参数的函数?在我们定义的函数内部a,b等于0和1,接下来,虽然这是真的,但我们正在屈服a.这到底是做什么的?而且,在屈服的同时a?a现在等于b,而b现在等于a + b.
下一个问题,对于数字fibonacci(),是否意味着函数中的每个数字或什么?我同样难以理解产量和"数量"实际上在做什么.显然我知道它对于fibonacci()打印号码中的每个数字都意味着.我是否真的在不知情的情况下定义数字?
谢谢,对不起,如果我不清楚的话.顺便说一句,这是项目欧拉,如果我知道如何编程这将是一件轻而易举的事情,但我正在努力学习这一点.
python ×1