我不理解python中的这段代码(帮助)
所以代码是我不理解python中的这段代码(帮助),python,Python,所以代码是 def mystery(n): a, b = 0, 1 while (a < n): print(a) a, b = b, a + b def神秘(n): a、 b=0,1 而(a
def mystery(n):
a, b = 0, 1
while (a < n):
print(a)
a, b = b, a + b
def神秘(n):
a、 b=0,1
而(a
我不太明白的一点是a,b=b,a+b是如何工作的。这对我来说似乎真的很难理解。我很难理解变量如何与所涉及的列表一起工作。有没有人能解释一下生产的是什么序列,以及这些数字是如何汇总的
这一序列注定要结束
0
一,
一,
二,
三,
五,
八,
十三,
二十一,
三十四
等
我会非常感激的,提前谢谢你 在
a,b=b,a+b,
中,在将右侧的表达式分配到左侧之前,对其进行求值。因此,它相当于:
c = a + b
a = b
b = c
在你的案例中,这实际上是交换,所以,OP:
a,b=0,1
将评估为
b=0
和a=1
注意,如果您搜索def神秘(n)站点:stackoverflow.com
,您将发现近25000个几乎相同的问题…@jornsharpe OMG,其中许多问题都与此精确算法有关。@YatharthROCK是的,这是一个非常常见的编程入门练习