所以我在python中遇到了一些奇怪的行为:
>>> 2+1 is 3
True
>>> 2000+1 is 2001
False
当使用大整数时,它没有使用正确的逻辑,为什么会这样?
答案 0 :(得分:2)
is
将返回True
。那就是id
。
In [21]: id(3)
Out[21]: 15538056
In [22]: id(2+1)
Out[22]: 15538056
In [23]: id(2001), id(2000+1)
Out[23]: (52399576, 54526360)