gpt4 book ai didi

python - 这两种在python中声明变量的方式有什么不同?

转载 作者:行者123 更新时间:2023-11-28 22:50:28 25 4
gpt4 key购买 nike

打印斐波那契数列时

a,b,c=1,1,1
while (c<7):
print(b,end=" ")
a,b,c=b,b+1,c+1

输出是>> 1 2 3 5 8 13

当我跟踪代码时,我发现结果是 >> 1 2 4 8 16 32

此输出是通过以这种方式声明变量产生的

a,b,c=1,1,1
while (c<7):
print(b,end=" ")
a=b
b=a+b
c=c+1

那么这两种不同的变量声明方式有什么区别

最佳答案

区别在于当你说:

  a,b,c=b,b+1,c+1

计算 = 的 rhs,然后将值分配给 lhs 上的变量。

只要分配对后续分配没有副作用,这就可以正常工作。例如:

a=42
b=7+a
c=b-a

不一样

a, b, c = 42, 7+a, b-a

如果 a、b、c 都设置为 0,那么在第一种情况下,您将分别得到 42、49、7。而在第二种情况下,你会得到 42, 7, 0

关于python - 这两种在python中声明变量的方式有什么不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22590305/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com