在Java或C等語言中,++做的就是讓這個變量的值+1,比如a = 1;A++的意思是用原來的值+1代替A原來的內存區域所表示的值。在Python中,壹旦創建了整數對象,它的值就不能更改。所以無法實現自增自減操作。
-
更新壹下。i += 1和i = i+1有什麽區別?大多數情況下,妳可以認為這兩種寫法是等價的。但是在實現上還是有壹些區別的。我們以塑料變量A為例。兩種編寫方法生成的字節碼如下:
i += 1:
6 LOAD_FAST 0 (a)
9負載常數1 (1)
12原地_添加
13 STORE_FAST 0 (a)
i = i + 1
6 LOAD_FAST 0 (a)
9負載常數1 (1)
12二進制_加法
13 STORE_FAST 0 (a)
如妳所見,它在底層調用中仍然是不同的。體現在Python語言的實現中,__add__對應+運算,而__iadd__對應+=運算。