1. 程式人生 > >python的 a,b=b,a+b 和 a=b b=a+b 的區別(經典)

python的 a,b=b,a+b 和 a=b b=a+b 的區別(經典)

剛剛我在學習python的時候,發現下面的這個賦值要把給繞暈了(思考了很久),所以我整理之後寫下博文,
希望對未來的學弟學妹有幫助!
永遠愛你們的!
————新寶寶

n,a,b=0,0,1
while n<6:
print(b)
a,b=b,a+b
n=n+1

n,a,b=0,0,1
while n<6:
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就可以了。

謝謝百度的一些啟發
如果有什麼不明白的地方,可以留言或者發訊息,我很樂意為你們解答的!

我很弱,所以我一直都在走著!
努力是因為不想讓在乎的人失望!
博主整理不易,如果喜歡推薦關注一下博主哦!

博主喜歡廣交好友下面是我的聯絡方式:
QQ:1263030049
加好友前請註明原因謝謝!