Python整数范围
在Python中,有没有办法获得可以使用的最大整数? 是否有像INT_MAX这样的预定义常量?
Python有任意的精度整数,所以没有真正的固定的最大值。 你只受可用内存的限制。
在Python 2中,有两种types, int和long 。  int s使用Ctypes,而long s是任意的精度。 你可以使用sys.maxint来find最大的int 。 但是int会自动提升为long ,所以你通常不需要担心: 
 sys.maxint + 1 
 工作正常,并返回一个long 。 
  sys.maxint甚至不存在于Python 3中,因为int和long被统一为一个任意的精度inttypes。 
 import re import sys import platform import struct formats = { "int":{"p_type":"integer", "format":"i"}, "float":{"p_type":"float", "format":"f"}, "double":{"p_type":"float", "format":"d"} } sys_bit = int(re.findall(r"\d+", platform.architecture()[0])[0])/8 for k,v in formats.iteritems(): print "max {0} {1}".format(k, 2**struct.Struct(v["format"]).size*sys_bit-1)-1) print "min {0} {1}".format(k, -2**struct.Struct(v["format"]).size*sys_bit-1))