sys.maxsize in Python
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.
# importing the module
import sys
# fetching the maximum value
max_val = sys.maxsize
print(max_val)
Output:
9223372036854775807
Example 2: Creating a list with the maximum size.
# importing the module
import sys
# fetching the maximum value
max_val = sys.maxsize
# creating list with max size
list = range(max_val)
# displaying the length of the list
print(len(list))
print("List successfully created")
Output
9223372036854775807 List successfully created
Example 3: Trying to create a list with a size greater than the maximum size.
# importing the module
import sys
# fetching the maximum value
max_val = sys.maxsize
try:
# creating list with max size + 1
list = range(max_val + 1)
# displaying the length of the list
print(len(list))
print("List successfully created")
except Exception as e:
# displaying the exception
print(e)
print("List creation unsuccessful")
Output
Python int too large to convert to C ssize_t List creation unsuccessful