有没有办法获得可以在 Python 中使用的最大整数?

2022-01-14 00:00:00 python integer

问题描述

是否有一些像 INT_MAX 这样的预定义常量?

Is there some pre-defined constant like INT_MAX?


解决方案

Python 具有任意精度整数,因此没有真正的固定最大值.您只受到可用内存的限制.

Python has arbitrary precision integers so there is no true fixed maximum. You're only limited by available memory.

在 Python 2 中,有两种类型,intlong.ints 使用 C 类型,而 longs 是任意精度.您可以使用 sys.maxint 找到最大 int.但是ints会自动提升为long,所以你通常不用担心:

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

工作正常并返回 long.

sys.maxint 甚至在 Python 3 中都不存在,因为 intlong 被统一为一个任意精度的 int 输入.

sys.maxint does not even exist in Python 3, since int and long were unified into a single arbitrary precision int type.

相关文章