在Python 整數物件所儲存的位置是不同的, 有一些是預先分配記憶體的,它一直儲存在記憶體裡面, 而其它的, 則在使用時開闢出空間.
說這句話的理由, 可以看看如下碼:
a = 5 b = 5 a is b # True a = 500 b = 500 a is b # False
由上面的程式碼可知, 整數型5 是一直存在的, 而整數500 不是一直存在的.
#那麼有哪些整數是預先分配記憶體位址的呢?
a, b, c = 0, 0, 0 i = 0 while a is b: i += 1 a, b = int(str(i)), int(str(i)) else: print(i) # 打印 257
由上知, 小於或等於256 (2**8) 的非負整數是一直儲存的,(也就是說它們的記憶體位址是預先開闢出來的, 不需要後面再分配)
a = -1 b = -1 a is b # False
而負數不會預先開闢.
以上是關於Python中整數物件儲存的位置說明的詳細內容。更多資訊請關注PHP中文網其他相關文章!