如何創建並啟動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 資源
透過相關的互動式教學、備忘單和程式碼比較來擴展您的知識。