Enter your email address below and subscribe to our newsletter

Python 套件管理與虛擬環境完整指南:使用 pip 與 venv 在 Linux 建立乾淨的開發環境

文章分享:

前言:為什麼需要虛擬環境

在 Linux 系統上開發 Python 專案時,如果直接用 pip3 install 安裝套件,會污染全系統的 Python 環境。
這在多專案並行或部署伺服器上容易造成「套件版本衝突」或「權限限制錯誤」。

虛擬環境(venv) 就是為了讓每個專案擁有獨立的 Python 套件空間。

確認系統 Python 狀況

python3 --version
pip3 --version

若系統尚未安裝 pip,可使用:

sudo apt update
sudo apt install python3-pip -y

建立專案資料夾

假設你的專案位於:

~/web/your_domain/private/your_project

進入目錄:

cd ~/web/your_domain/private/your_project

建立虛擬環境(venv)

python3 -m venv venv

啟動虛擬環境:

source venv/bin/activate

你會看到提示符前面出現:

# 使用者前方會有 (venv) 提示
(venv) annie@nbt-hcp:~/web/your_domain/private/your_project $

在虛擬環境中安裝套件

範例:安裝 YouTube API 套件

pip install google-api-python-client

安裝完成後可確認:

python -m pip show google-api-python-client

測試你的程式

假設你的程式是 file.py,內容開頭為:

from googleapiclient.discovery import build

執行:

python file.py

若無錯誤,即表示環境設定成功。

離開虛擬環境

當你不再開發時,可輸入:

deactivate

回到系統環境。

進階補充:pip、apt 與 venv 的差異

工具用途管理對象
apt系統層套件管理器安裝整個系統用的 Python 或工具(例如 python3, nginx)
pip/pip3Python 套件管理器安裝第三方 Python 模組(如 requests, flask)
venv虛擬環境為每個專案建立獨立套件空間,避免版本衝突

常見問題 Q&A

Q1. 為什麼我不能直接用 pip3 install

因為新版 Debian / Ubuntu 對系統層 Python 啟用了保護機制(PEP 668),防止你用 pip 改動系統套件。

Q2. 如果我真的想在系統層安裝呢?

可用:

sudo pip3 install 套件名 --break-system-packages

⚠️ 不推薦,容易破壞 apt 管理的 Python 相依性。

結語

使用 venv 是專業開發者的標準做法。
不僅能避免套件污染,也方便在不同伺服器間部署與移植。
只要記得三步:

python3 -m venv venv
source venv/bin/activate
pip install 套件名

你就能擁有乾淨、穩定又可重現的 Python 執行環境。

文章分享
James Tsai
James Tsai
文章: 10

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *