我希望对python最不利的是-maxint-1
我期望拥有-2,会使整数溢出。

from sys import maxint
maximum_int = maxint
minimum_int = -maxint - 2
#  2147483647
# -2147483649
print maximum_int
print minimum_int

然而。显示正确的结果,并显示一个比-maxint-1更大的负值。

我可以知道为什么吗?

最佳答案

在这里您可以看到结果提升了很长时间

>>> from sys import maxint
>>> type(-maxint)
<type 'int'>
>>> type(-maxint-1)
<type 'int'>
>>> type(-maxint-2)
<type 'long'>
>>>

请注意,有符号值的通常约定是负数要比正数多,因此在这种情况下,-2147483648仍然是int

10-07 12:35