Python 中的最大整数

Muhammad Waiz Khan 2021年2月28日
Python 中的最大整数

本教程将讨论不同版本 Python 中的最大整数值,以及我们如何获取它。

在 Python 2 中,整数和长整数是不同的数据类型。整数的极限值是 231-1,如果数值超过了极限值,变量的数据类型会自动切换为长整数,并且不会引发异常。变量的数据类型一旦切换为 long 数据类型,可以是机器能够存储的最大数据类型,意味着在 Python 2 中,long 没有明确的限制。

在 Python 3 中,我们没有将整数和长数据类型分开,这意味着在超过 231-1 的限制后,变量数据类型将不会被切换。简而言之,Python 3 中的整数和 Python 2 中的长整型工作方式一样,并且其值可以等于计算机可以存储的最大值。

在 Python 中使用 sys 模块获取最大整数值

正如我们上面所讨论的那样,在 Python 3 中,整数没有限制或最大值,但在 Python 2 中,整数是有限制的,过了这个限制,变量的数据类型就会切换为长数据类型。

我们可以通过使用 sys.maxint 来获取 Python 2 中的最大整数值,等于 231-1。下面的示例代码演示了如何使用 sys.maxint 来获取 Python 2 中的最大整数值。

import sys

print(sys.maxint)

输出:

9223372036854775807

在 Python 3 中,sys.maxint 不存在,因为整数数据类型没有限制或最大值。但是我们可以使用 sys.maxsize 来获取 Py2 和 3 中 Py_ssize_t 类型的最大值。这也是列表、字符串、字典和类似容器类型可以拥有的最大尺寸。

下面的示例代码演示了如何在 Python 中获取容器类型的最大值。

import sys

print(sys.maxsize)

如果我们需要获取整数的最大值或最小值,以便在条件检查中使用,我们可以使用 float('inf')float('-inf') 来获取 Python 中的正负无穷大。

示例代码:

print(float('inf'))
print(float('-inf'))

输出:

inf
-inf

相关文章 - Python Integer