a, b = a, a+b 和a=b b=a+b的区别
n,a,b=0,0,1 while n<5: print(b) a,b=b,a+b n=n+1
和
n,a,b=0,0,1 while n<5: print(b) a=b b=a+b n=n+1
输出结果不一样
解答:
赋值运算,先计算赋值号(也就是=号右边的,再赋值)
那么
a, b = b, a+b # 这种赋值,先计算等值 右边 那么 b=1 a+b=1 # 再赋值给a和b,那么 a=1, b=1
而下面
a = b # 此时 b=1, 那么a=1 b = a+b # 那么 b=2
总结: a, b = b, a+b 这个表达式的意思就是说,先计算=号的右边b的值,a+b的值,算好了,然后再分别赋值给a 和b