关于Python的 a, b = b, a+b


Python中有一种写法:多个值同时赋给多个变量,如:a, b = b, a+b

1. A写法

a = 0, b = 1
a, b = b, a+b
print a, b   #结果为:1 1

这种写法,Python先计算等号的右边,再赋值,这样就保证了a, b都是初始值

2. B写法

a = 0, b = 1
a = b
b = a + b
print a, b   #结果为:1 2

很明显,这种是顺序计算赋值,a+b中的a的值已经改变了

要想B写法取得A写法的效果,必须增加一个变量

a = 0, b = 1, c = 0
c = a
a = b
b = c + b
print a, b   #结果为:1 1

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM