python中为什么没有自增或者自减
生活随笔
收集整理的這篇文章主要介紹了
python中为什么没有自增或者自减
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
??在c語言和c++中我們經常會用到自增或者自減的語句,但對于python中如果運用這種格式便會報錯…why?
一、預備知識
小整數池
??python中為了提高儲存效率,對于int類型的整型變量的儲存,有一個專門的小整數池,它會存放-5到256的整形數值,并對應相應的地址。當我們調用這個區間內的整型數值時,系統會從小整數池中將需要的數字拿出。
二、正文
- 對于c語言,當我們定義一個變量并對其賦值的時候,它會先分配一個內存地址,然后將我們賦予的值儲存到該地址當中。
- 但對于python它是從整數池中取得該對象。
- 因此當我們使用自增或者自減(i++或i–)的時候,它相當于對對象本身進行運算,但python中規定,數值對象是不能夠改變的。
例:1:
aa = 4 print(id(aa)) bb = 4 print(id(bb)) cc = -5 print(id(cc)) dd = -5 print(id(dd))運行結果:
140709747410688 140709747410688 140709747410400 140709747410400例2:
aa = 4 aa++ print(aa)運行結果:
該程序會自動報錯例3:
aa = 4 aa+=1 print(aa)運行結果:
5??aa+=1,這個語句相當于aa = aa + 1,它與自增不同,相當于先執行等號右邊的aa + 1,然后重新生成了一個變量aa,并等號右邊的值賦給新生成的aa變量。
總結
以上是生活随笔為你收集整理的python中为什么没有自增或者自减的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 空气炸锅吸油纸能包肉类冷冻吗?
- 下一篇: 60小建中汤里面的姜用新鲜的生姜的话放多