2016-06-30 40 views
-4

我想知道python中的+ =運算符是做什麼的。它用於什麼?爲什麼我會使用它?python中的+ =意思是什麼,爲什麼我應該使用它?

+1

'x + = y'是'x = x + y'的簡寫。你不會被打擾做一個谷歌搜索「Python操作符」? –

+0

我爲什麼要使用它? –

+0

因爲這樣你不必重新輸入第一個變量名,這意味着輸入的次數更少,而且犯了一個愚蠢的錯誤的可能性更小(例如,如果你打算輸入'x1 = x1 + y1',而是輸入' x1 = y1 + y1'?你甚至可能沒有注意到,然後花幾個小時或幾天的時間來追蹤錯誤。) –

回答

0
a += b 

是類似於:

a = a + b 

它還與其他基本標誌的作品,例如:

a *= b 

是類似於:

a = a * b 
0

其他用途是字符串,str + ='defg'是與str = str +'defg'相同

str = 'abc' 
str += 'defg' 
print(str) 
'abcdefg' 
0

正如很多人指出的那樣,x += yx = x + y類似。

一個值得注意的區別是+=操作員是「就地」操作。所以x += y實際上是「就地添加」。這意味着它會修改對象'x'。

x = x + y添加'x'和'y'的值,並將結果(作爲新對象)存儲在'x'中,放棄其先前的值。這在處理對象,自定義數字類型或任何用戶定義的類中可以在內部修改時變得更加重要。

+調用對象的__add__()方法。
+=來電__iadd__()
(它可以變得更加複雜,與__radd__等,但現在我粉飾,對。)

一個很好的理由使用+=是:根據對象類型,x += y可以在特定情況下進行優化,但x = x + y必須創建一個新對象以重新分配給'x'。

相關問題