Python 中整型对象存储的位置

在 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
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
而负数不会一直存储.

posted on 2011-06-29 21:19  iAlex  阅读(1016)  评论(2编辑  收藏  举报

导航