1.python的 a,b=b,a+b 和 a=b b=a+b 的區別


 1 n1,a1,b1=0,0,1
 2 while n1<6:
 3     print(b1,end=' ')
 4     a1,b1=b1,a1+b1
 5     n1=n1+1
 6 print()
 7 
 8 n2,a2,b2=0,0,1
 9 while n2<6:
10     print(b2,end=' ')
11     a2=b2
12     b2=a2+b2
13     n2=n2+1
14 ###################################
15 D:\untitled\project2\venv\Scripts\python.exe D:/untitled/project2/day1/342432.py
16 1 1 2 3 5 8 
17 1 2 4 8 16 32 
18 Process finished with exit code 0

可見上面的輸出結果是不一樣的。那么為什么呢?

a,b=b,a+b 這個公式是賦值運算,先右邊的運算,然后再給左邊的賦值。

 1 a = 0
 2 b = 1
 3 a , b = b , a + b 
 4 # 這種賦值,先計算等值 右邊 就是 b=1 a+b=0+1=1
 5 # 再賦值給a和b,那么 a=1, b=1
 6 # 然后就是依次這樣
 7 #################################
 8 a = b
 9 # 此時a=1
10 b = a + b
11 # b=1+1=2

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM