01-如何檢視你的Python版本?

公众号-JavaEdge發表於2024-06-26

你可能聽說過Python 2和Python 3。儘管它們是同一種語言的兩個版本,但它們的語法不同;用Python 3編寫的程式碼可能無法在Python 2中執行。讓我們來看看如何在Windows、macOS和Linux系統的命令列和指令碼中檢查你的Python版本。

Python是最流行的程式語言之一。由於其簡單的語法、高生產率和驚人的開源庫,[Python幾乎可以用來做任何事情]

然而,你可能已經注意到,有些人使用Python 2,而另一些人則喜歡Python 3。這兩個版本之間的差異非常顯著,不僅僅是修復了一些錯誤和新增了一些新功能。如果應用程式是用Python 2編寫的,你可能無法用Python 3來執行它。

所以,你必須知道你電腦上安裝的Python版本。讓我們看看如何檢視Python版本。我們將從命令列開始。

在命令列中檢視Python版本

你可以很容易地在命令列/終端/外殼中檢視你的Python版本。首先,讓我們回顧一下如何在不同的作業系統中訪問命令列。

Windows

  • 按下 Win+R
  • 輸入 powershell
  • OKEnter

macOS

  • 開啟 Finder
  • 點選 Applications
  • 選擇 Utilities -> Terminal

Linux

  • 開啟 terminal 視窗

然後,在上述任一作業系統中,你只需在命令列中輸入**python --version**python -V,然後按**Enter**。你會得到這樣的結果:

python --version
Python 3.8.3
python -V
Python 3.8.3

根據你的Python發行版,你可能會在結果集中得到更多資訊。然而,我們要找的是“Python”後面的數字。在這種情況下,完整的版本號是3.8.3。

通常,我們只關心主要版本——Python 2或Python 3。這由完整版本號的第一個數字表示。在我們的例子中,這個數字是3,這意味著我們安裝的是Python 3。

從Python 3.6開始,你還可以使用**python -VV**(這是兩個V,不是一個W)來獲得關於你的Python版本的更詳細資訊:

python -VV
Python 3.8.3 (default, Jul 2 2020, 17:30:36) [MSC v.1916 64 bit (AMD64)]

有時你可能想在編寫應用程式時檢查Python的版本(即在指令碼中)。這在你電腦上安裝了多個Python版本時尤其有用。要檢查正在執行的Python版本,你可以使用sys模組或platform模組。指令碼在Windows、macOS和Linux中都是相同的。

要使用sys模組檢查Python版本,編寫如下程式碼:

import sys
print (sys.version)

你會得到:

要使用platform模組檢查Python版本,使用如下程式碼:

import platform
print(platform.python_version())

輸出如下:

兩個程式碼片段都會以字串格式輸出Python版本。如果需要,你還可以以元組格式獲取版本號。元組包含五個組成部分:主要版本、次要版本、微版本、釋出級別和序列號:

當然,你可以透過索引(如sys.version_info[0])或名稱(如sys.version_info.major)輕鬆獲取這個元組的各個組成部分。

很簡單,對吧!

Python 2還是Python 3?

現在我們知道如何檢視Python版本了。但這兩個版本有什麼區別呢?

Python 2 是一個較舊的版本,以前廣泛用於軟體開發和IT運維(DevOps)。然而,自2020年1月1日起,它不再開發和維護,已經停止更新。這意味著Python 2中發現的任何錯誤或安全問題都不會再被修復。Python的志願開發者建議使用Python 2的人儘快遷移到Python 3。

Python 3 於2008年首次推出。它的語法和行為與Python 2有很大不同,但通常認為Python 3更簡單易懂。

由於Python 2不再受支援,如果你正在編寫新應用程式或剛開始學習Python,你一定要選擇Python 3。唯一需要學習Python 2的理由是如果你公司的程式碼是用Python 2編寫的,並且你需要處理它。這種情況應該不會經常發生,特別是在Python 2停更一段時間後。

關注我,緊跟本系列專欄文章,咱們下篇再續!

作者簡介:魔都架構師,多家大廠後端一線研發經驗,在分散式系統設計、資料平臺架構和AI應用開發等領域都有豐富實踐經驗。

各大技術社群頭部專家博主。具有豐富的引領團隊經驗,深厚業務架構和解決方案的積累。

負責:

  • 中央/分銷預訂系統效能最佳化
  • 活動&券等營銷中臺建設
  • 交易平臺及資料中臺等架構和開發設計
  • 車聯網核心平臺-物聯網連線平臺、大資料平臺架構設計及最佳化
  • LLM應用開發

目前主攻降低軟體複雜性設計、構建高可用系統方向。

參考:

  • 程式設計嚴選網

本文由部落格一文多發平臺 OpenWrite 釋出!

相關文章