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