久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

c - 為什么python中值相等的兩個(gè)變量會(huì)指向同一個(gè)內(nèi)存地址?

瀏覽:117日期:2022-07-30 11:48:25

問(wèn)題描述

http://www.cnblogs.com/lolein... 下面是這個(gè)文章里面所演示的代碼,

>>> a=1>>> b=1>>> id(a)40650152>>> id(b)40650152>>> a=2>>> id(a)40650140

我有點(diǎn)費(fèi)解的就是,按道理a和b完全就不是同一個(gè)變量,那么理論上他們無(wú)論值是什么,都應(yīng)該是放在兩個(gè)不同的內(nèi)存空間啊,為什么他們相等的時(shí)候就放在了同一個(gè)內(nèi)存空間呢?難道是python的運(yùn)行時(shí)環(huán)境會(huì)自動(dòng)判斷他們的值,如果相同就放到同一個(gè)內(nèi)存空間,為的是節(jié)省內(nèi)存占用嗎?

問(wèn)題解答

回答1:

Python實(shí)現(xiàn)int的時(shí)候有個(gè)小整數(shù)池。為了效率, Python首先在內(nèi)心里創(chuàng)建出這些整數(shù),然后復(fù)用了這部分整數(shù),創(chuàng)建一個(gè)值為1的int,其實(shí)直接從這個(gè)池里拿出1。一般是-5到257。你弄個(gè)1000 500啥的看看。就不會(huì)這樣了。看看這個(gè):python整數(shù)對(duì)象實(shí)現(xiàn)

回答2:

為了性能上的優(yōu)化而使用了常量池。而且這也不是 python 獨(dú)有的,很多其他語(yǔ)言也使用了類(lèi)似的技巧。

回答3:

https://github.com/python/cpy...

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 武邑县| 克拉玛依市| 株洲市| 驻马店市| 高平市| 克山县| 涿州市| 浠水县| 祁连县| 分宜县| 莱西市| 武功县| 黑河市| 南江县| 陆丰市| 海盐县| 无棣县| 个旧市| 武强县| 宜都市| 临潭县| 田东县| 西藏| 抚顺县| 瑞安市| 汝城县| 石阡县| 吐鲁番市| 文水县| 庆安县| 鹰潭市| 九江市| 延吉市| 锡林郭勒盟| 沙洋县| 石景山区| 尼玛县| 林州市| 台北市| 西平县| 板桥市|