如何創建並啟動Python虛擬環境

了解如何使用內建 venv 模組建立、啟動和管理 Python 虛擬環境。保持專案依賴隔離且乾淨。

在編輯器中嘗試此解決方案

概述

在開發Python應用程式時,您經常會使用pip安裝第三方套件。如果沒有虛擬環境,這些套件將全域安裝在系統的 Python 環境中。如果不同的項目需要同一庫的不同版本(例如,項目 A 需要Django3.2,項目 B 需要Django5.0),這很快就會導致衝突。

虛擬環境是一個獨立的目錄,其中包含自己的 Python 執行檔和自己的一組已安裝套件。透過為每個專案建立虛擬環境,您可以確保套件安裝不會幹擾其他專案或系統範圍的 Python 設定。這是 Python 開發的基本最佳實踐。

在現代Python 3中,標準庫包含「venv」模組,該模組無需外部工具即可處理虛擬環境。虛擬環境的生命週期包括建立環境目錄、在活動終端會話中啟動它、安裝依賴項以及最終在完成後停用它。

程式碼和執行輸出

此模擬顯示用於在 macOS/Linux 和 Windows 中建立、啟動、安裝套件以及停用虛擬環境的終端命令。

virtual_env.py
在編輯器中嘗試
commands_macos_linux = """
# 1. Create a virtual environment named 'venv'
$ python3 -m venv venv

# 2. Activate the virtual environment
$ source venv/bin/activate

# 3. Verify activation (will show the path to the virtual env's python)
(venv) $ which python

# 4. Deactivate when done
(venv) $ deactivate
"""

commands_windows = """
# 1. Create a virtual environment named 'venv'
> python -m venv venv

# 2. Activate the virtual environment in Command Prompt
> venv\Scripts\activate

# 3. Or activate in PowerShell
> .\venv\Scripts\Activate.ps1

# 4. Deactivate when done
(venv) > deactivate
"""

print("macOS & Linux terminal commands:")
print(commands_macos_linux.strip())
print("\nWindows terminal commands:")
print(commands_windows.strip())
端子輸出
macOS & Linux terminal commands:
# 1. Create a virtual environment named 'venv'
$ python3 -m venv venv

# 2. Activate the virtual environment
$ source venv/bin/activate

# 3. Verify activation (will show the path to the virtual env's python)
(venv) $ which python

# 4. Deactivate when done
(venv) $ deactivate

Windows terminal commands:
# 1. Create a virtual environment named 'venv'
> python -m venv venv

# 2. Activate the virtual environment in Command Prompt
> venv\Scripts\activate

# 3. Or activate in PowerShell
> .\venv\Scripts\Activate.ps1

# 4. Deactivate when done
(venv) > deactivate

逐步實施

  • 在專案終端中執行 python -m venv <env_name> 以產生環境檔案。
  • 使用 source <env_name>/bin/activate (macOS/Linux) 或 <env_name>\Scripts\activate (Windows) 啟動環境。
  • 使用 pip install 安裝所需的套件,以確保它們與該專案目錄隔離。
  • 完成工作後,在終端機 shell 中鍵入 deactivate 以退出虛擬環境。

常見問題解答

我應該在哪裡建立虛擬環境資料夾?

直接在專案的根目錄中建立它。透過將虛擬環境資料夾(例如 venv/)新增至 .gitignore 檔案中,避免將其提交至 Git。

激活虛擬環境實際上有什麼作用?

啟動會暫時更新 shell 的 PATH 變量,將其指向虛擬環境的 bin 或 Scripts 資料夾,以便運行本地 python 和 pip 可執行文件,而不是系統範圍的可執行檔。

相關主題

推薦的 Python 資源

透過相關的互動式教學、備忘單和程式碼比較來擴展您的知識。