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
