作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
这是我的第一个问题,我开始学习Python。之间有区别吗:
a, b = b, a + b
和
a = b
b = a + b
当您在下面的示例中编写它时,它会显示不同的结果。
def fib(n):
a, b = 0, 1
while a < n:
print(a, end=' ')
a, b = b, a + b
print()
fib(1000)
和
def fib(n):
a, b = 0, 1
while a < n:
print(a, end=' ')
a = b
b = a + b
print()
fib(1000)
最佳答案
在 a, b = b, a + b
中,右侧的表达式在赋值给左侧之前先求值。所以它等同于:
c = a + b
a = b
b = c
在第二个示例中,a
的值在 b = a + b
运行时已经更改。因此,结果是不同的。
关于Python a, b = b, a + b,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21990883/
我是一名优秀的程序员,十分优秀!