Is there some pre-defined constant like INT_MAX?
1 Answer
Python has arbitrary precision integers so there is no true fixed maximum. You're only limited by available memory.
In Python 2, there are two types, int and long. ints use a C type, while longs are arbitrary precision. You can use sys.maxint to find the maximum int. But ints are automatically promoted to long, so you usually don't need to worry about it:
sys.maxint + 1
works fine and returns a long.
sys.maxint does not even exist in Python 3, since int and long were unified into a single arbitrary precision int type.
4 Comments
mattdm
Note that in Python 3 (and Python 2.6 and up)
sys.maxsize can be used when you need an arbitrarily-large value.Charlie Parker
is there one that is not a long?
Tadhg McDonald-Jensen
sys.maxsize continues to be the theoretical limit on size of containers for python 2 and 3 (theoretical because memory is the real limiting factor)jarno
@mattdm
sys.maxsize+1 is larger than that.