据我所知,在java中,Integer.MAX_VALUE总是等于2 ^ 31-1。 但似乎在python中,sys.maxint的值取决于你所使用的系统和python的版本。它是否正确?如果我想得到数字2147483647是pow(2,31)-1唯一安全的方法吗?
答案 0 :(得分:5)
sys.maxint
可以安全地用作int
的最大值。如果您希望2**31-1
,无论int
的大小是什么,请使用2**31-1
(并注意,如果它等于long
,这将为您提供sys.maxint
,因为2**31
会溢出,如果因某种原因需要int
,请拨打int
。