国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python的id()函數介紹

2019-11-25 18:41:09
字體:
來源:轉載
供稿:網友

>>> a = 2.5
>>> b = 2.5
>>> c = b
>>> a is c
False
>>> a = 2
>>> b = 2
>>> c = b
>>> a is c
True

在使用is函數的時候去打印a,b分別被賦值為2.5 和2的情況,發現:
>>> a = 2
>>> b = 2
>>> id(a)
21132060
>>> id(b)
21132060
>>> a = 2.5
>>> b = 2.5
>>> id(a)
19622112
>>> id(b)
29321464

當a,b為2的時候id相同,而為2.5的時候不同,這種情況在string字符串的時候也會出現,即當很短的a,b賦值很短的字符串的時候,它們的id值相同,而很長的則不會;

查閱了如下的文章:
http://stackoverflow.com/questions/4293408/ids-of-immutable-types
http://stackoverflow.com/questions/3402679/identifying-objects-why-does-the-returned-value-from-id-change
之后,得到一個簡單的結論:解釋器在對值很小的int和很短的字符串的時候做了一點小優化,只分配了一個對象,讓它們id一樣了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鹰潭市| 东方市| 寿阳县| 青阳县| 密云县| 当阳市| 雅安市| 马鞍山市| 上高县| 香河县| 施秉县| 苏尼特右旗| 达日县| 融水| 伊金霍洛旗| 高雄县| 张家口市| 武宣县| 石棉县| 加查县| 武夷山市| 富宁县| 凤凰县| 江永县| 繁昌县| 长治市| 碌曲县| 沾益县| 洛宁县| 湘乡市| 阜平县| 秭归县| 隆安县| 阳曲县| 泗洪县| 长海县| 电白县| 吴桥县| 宾川县| 永康市| 云林县|