如何檢查我的指令碼正在執行哪個版本的 Python?


Python 正在定期更新,不斷新增新功能和支援。從 1994 年到目前的版本,Python 經歷了大量的更新。

透過使用 Python 標準庫,例如 `sys` 或 `platform` 模組,我們可以獲取實際執行指令碼的 Python 版本資訊。

通常情況下,Python 版本資訊會在命令列啟動直譯器後立即自動顯示在控制檯中。

Python 3.10.7 (tags/v3.10.7:6cc6b13, Sep  5 2022, 14:08:36) [MSC v.1933 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.

使用 `version` 屬性

`sys` 模組通常提供訪問一些用於維護直譯器的變數和函式。在這裡,我們可以使用此模組在指令碼中獲取 Python 版本資訊。

首先,我們需要從標準庫匯入 `sys` 模組,Python 版本資訊存在於 `sys` 模組中定義的 `version` 屬性中。

sys.version

`version` 屬性返回一個字串,其中包含 Python 直譯器的版本號,以及有關構建號和使用的編譯器的附加資訊。

示例

>>> import sys
>>>  sys.version

輸出

'3.10.7 (tags/v3.10.7:6cc6b13, Sep  5 2022, 14:08:36) [MSC v.1933 64 bit (AMD64)]'

使用 `version_info` 屬性

我們還可以使用另一個屬性 `version_info` 來獲取 Python 版本,它會更詳細地提供資訊。語法如下:

sys.version_info

示例

`version_info` 屬性返回一個元組,提供主版本、次版本和微版本級別。

>>>  import sys
>>>  sys.version_info

輸出

sys.version_info(major=3, minor=10, micro=7, releaselevel='final', serial=0)

示例

從 `version_info` 屬性的輸出中,我們可以透過名稱訪問資訊,例如 `major` 或 `minor`。

info = sys.version_info
print(info.major)
print(info.minor)

輸出

3
10

使用 `platform` 模組的 `python_version()` 方法

`Platform` 模組是一個 Python 包,它提供了一個 API 來檢索有關程式碼執行平臺/系統的所有資訊。`Platform` 是 Python 的內建模組,因此我們可以直接在指令碼中匯入它。Python 版本資訊存在於 `python_version()` 方法中。語法如下:

platform.python_version()

示例

`python_version()` 方法丟擲一個字串,其中包含以 'major.minor.patchlevel' 形式表示的 Python 版本資訊。

import platform
platform.python_version()

輸出

'3.10.7'

使用 `python_version_tuple()` 方法

另一個方法稱為 `platform.python_version_tuple()`,也用於在執行的指令碼中獲取 Python 版本。

語法

platform.python_version_tuple()

`platform` 模組中的 `python_version_tuple()` 以元組的形式返回 Python 版本,第一個元素代表主版本,第二個元素代表次版本,最後一個元素代表補丁級別。

示例

以下示例可用於 Windows、Mac、Linux 和 Ubuntu 作業系統。

print(type(print(platform.python_version_tuple())))
print(type(platform.python_version_tuple()))

輸出

('3', '10', '7')
<class 'tuple'>

更新於:2023年8月24日

547 次瀏覽

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.