虛擬環境 (Virtual Environments)
Python 的虛擬環境允許你為每個項目創建獨立的 Python 執行環境,避免不同項目之間的依賴衝突。這在管理多個不同版本的庫或需要不同 Python 版本的項目時尤為重要
python -m venv myenv
source myenv/bin/activate # 激活虛擬環境 (Linux/macOS)
myenv\Scripts\activate # 激活虛擬環境 (Windows)
虛擬環境(Virtual Environments)是 Python 中一種非常重要的工具,用於隔離不同項目之間的依賴關係和包。它可以避免多個項目共享相同的全局 Python 環境時出現的依賴衝突問題。
虛擬環境的主要用途
包依賴隔離:不同的項目可以使用不同的包版本,避免衝突。例如,項目 A 可能需要某個庫的版本 1.0,而項目 B 需要相同庫的版本 2.0,虛擬環境可以讓每個項目有各自獨立的環境。
避免全局安裝:在虛擬環境中,安裝的所有包都只對當前的環境有效,不會影響全局的 Python 設置。
提高項目可移植性:通過 requirements.txt 文件來記錄環境中的所有依賴,可以在其他系統上輕鬆重現相同的環境。
如何使用虛擬環境
如果你尚未安裝 venv,可以運行以下命令:
bash
複製程式碼
pip install virtualenv
2. 創建虛擬環境
要在項目目錄下創建虛擬環境,可以運行以下命令:
在 Unix/MacOS 上:
bash
複製程式碼
python3 -m venv myenv
在 Windows 上:
bash
複製程式碼
python -m venv myenv
這會在當前目錄下創建一個名為 myenv 的虛擬環境文件夾,裡面包含了 Python 執行文件和一個獨立的包安裝環境。
bash
複製程式碼
source myenv/bin/activate
在 Windows 上:
bash
複製程式碼
myenv\Scripts\activate
激活後,你的命令行提示符會變成類似 (myenv),表示你已經進入了虛擬環境。
pip install requests
你可以使用 pip freeze 來查看已安裝的包:
pip freeze
5. 創建 requirements.txt 文件
在開發完成後,你可以使用 pip freeze 創建一個 requirements.txt 文件,記錄當前環境中的所有包及其版本。這有助於在其他環境中重現相同的環境:
pip freeze > requirements.txt
然後,其他開發者或未來你自己可以在另一台電腦上運行以下命令,從 requirements.txt 文件中安裝所有依賴:
pip install -r requirements.txt
6. 停止虛擬環境
要退出虛擬環境,只需運行以下命令:
在 Unix/MacOS 和 Windows 上:
deactivate
7. 刪除虛擬環境
刪除虛擬環境非常簡單,只需刪除虛擬環境的文件夾即可,這不會對你的系統或 Python 安裝造成任何影響:
bash
複製程式碼
rm -rf myenv
總結
虛擬環境在 Python 開發中扮演著關鍵角色,特別是在需要同時處理多個項目時。它確保了項目之間的包依賴不會衝突,使得開發過程更加順暢,並提高了項目的可移植性