maxsize attribute of the sys module fetches the largest value a variable of data type Py_ssize_t can store. It is the Python platform’s pointer that dictates the maximum size of lists and strings in Python. The size value returned by maxsize depends on the platform architecture:
- 32-bit: the value will be 2^31 – 1, i.e. 2147483647
- 64-bit: the value will be 2^63 – 1, i.e. 9223372036854775807
sys.maxsize
Syntax: sys.maxsize
Returns: maximum value of Py_ssize_t depending upon the architecture
Example 1: Let us fetch the maximum Py_ssize_t value on a 64-bit system.
Python3
import sys
max_val = sys.maxsize
print (max_val)
|
Output:
9223372036854775807
Example 2: Creating a list with the maximum size.
Python3
import sys
max_val = sys.maxsize
list = range (max_val)
print ( len ( list ))
print ( "List successfully created" )
|
Output9223372036854775807
List successfully created
Output:
9223372036854775807
List successfully created
Example 3: Trying to create a list with a size greater than the maximum size.
Python3
import sys
max_val = sys.maxsize
try :
list = range (max_val + 1 )
print ( len ( list ))
print ( "List successfully created" )
except Exception as e:
print (e)
print ( "List creation unsuccessful" )
|
OutputPython int too large to convert to C ssize_t
List creation unsuccessful
Output:
Python int too large to convert to C ssize_t
List creation unsuccessful