全部速查表Python 開發

pip

pip 24+

pip 套件安裝器 CLI 命令快速參考:安裝/解除安裝/檢視套件、虛擬環境、requirements 檔、設定、索引管理——附常用參數與實作範例。

37 條命令

說明

pip --version

印出 pip 版本及其指向的 Python 直譯器。

pip --version
pip --help

列出所有 pip 子指令。

pip --help
pip <subcommand> --help

顯示單一 pip 子指令的所有旗標。

pip install --help | head -60

自身

python -m pip --version

把 pip 當作 Python 模組執行——在有多個 Python 直譯器的系統中比直接用 `pip` 更可靠。

python -m pip --version
python -m pip install --upgrade pip

把 pip 升級到最新版本。搭配 `python -m ensurepip` 可為缺乏 pip 的虛擬環境引導安裝。

python -m pip install --upgrade pip
python -m ensurepip --upgrade

為不含 pip 的虛擬環境引導安裝 pip(PEP 453)。

--upgrade;--default-pip

python -m ensurepip --upgrade

安裝

pip install <pkg>

從預設索引(PyPI)安裝 `<pkg>` 的最新版本。

<pkg>;-r <req.txt>;-e <path>;-U;--upgrade-strategy only-if-needed|eager;--force-reinstall;--no-deps;--pre 含預發行版;--dry-run;--quiet

pip install requests
pip install '<pkg>>=<ver>'

以版本指定符(PEP 440)安裝。可用 `>=`、`==`、`<`、`~=`、`!=`、`===`。

pip install 'django>=4.2,<5'
pip install -r requirements.txt

安裝 requirements 檔中列出的所有套件(每行一個指定符,可加 `# 註解`)。

-r <file>;-c <constraints>;--no-deps;--require-hashes

pip install -r requirements.txt
pip install -e <path>

以可編輯/開發模式安裝專案——你的 `src/` 會以符號連結加入 site-packages,編輯後即時生效。

-e .;-e .[dev];--no-deps

pip install -e .
pip install '.[dev]'

為當前專案安裝 `pyproject.toml` 中宣告的可選 extras。

pip install '.[dev,docs]'
pip install git+https://github.com/<user>/<repo>.git

直接從 Git 儲存庫安裝(任何 ref:分支、tag、commit)。

git+https://...;git+ssh://...;@branch;@tag;@commit

pip install 'git+https://github.com/requests/requests.git@main'
pip install <pkg> --index-url <url>

從替代索引安裝——企業 PyPI 鏡像、JFrog Artifactory、AWS CodeArtifact 等。

pip install <pkg> --index-url https://pypi.org/simple
pip install <pkg> --extra-index-url <url>

在預設索引之外同時搜尋額外的索引。使用 `--no-index` 可完全禁止遠端擷取。

pip install <pkg> --extra-index-url https://my-mirror/simple
pip install --user <pkg>

安裝到使用者 site-packages(`~/.local/`),而非系統 Python。

--user;--target <dir>

pip install --user pipx
pip install --dry-run <pkg>

印出 pip 會安裝的內容,但實際不安裝——CI 預覽很實用。

--dry-run;--quiet;--report <file>

pip install --dry-run -r requirements.txt

檢視

pip list

列出已安裝套件(Name/Version/Location 欄位)。

--format columns|freeze|json;--outdated;--uptodate;--user;--local;--pre;--not-required;--exclude;--include-editable

pip list --format=freeze > freeze.txt
pip list --outdated

列出已安裝但有新版本可用的套件。

--outdated;--format columns|freeze|json

pip list --outdated --format=columns
pip show <pkg>

顯示單一已安裝套件的 metadata:版本、位置、requires、required-by、摘要。

-f 列出所有檔案;--files 同上;<pkg>...

pip show -f requests
pip check

驗證已安裝套件的依賴是否相容——找出損壞的依賴衝突。

pip check
pip freeze

以 `pkg==ver` 格式輸出已安裝套件(已排序、不含 extras)——requirements.txt 的正典來源。

--local;--user;--all;--exclude;--requirement <file>

pip freeze > requirements.lock

解除安裝

pip uninstall <pkg>

解除安裝套件。加上 `-y` 跳過確認提示。

<pkg>...;-y;-r <file> 解除安裝檔案中所有套件;--dry-run

pip uninstall -y requests
pip uninstall -r requirements.txt -y

解除安裝 requirements 檔中列出的所有套件。

pip uninstall -r requirements.txt -y

索引

pip download <pkg>

把 wheel/sdist 下載到目錄中而不安裝。適合離線傳輸。

-d <dir>;--no-deps;--no-binary :all:;--dest <dir>;--platform

pip download requests -d ./wheels
pip search <query>

依名稱/摘要在 PyPI 搜尋套件(PyPI 已停用;請改用網頁 UI)。

pip search 'fastapi'
pip wheel <pkg>

為專案及其依賴建置 wheel 到輸出目錄。

-w <dir>;--no-deps;--no-binary :all:;--no-build-isolation

pip wheel . -w ./wheels
pip cache dir

印出 pip 用來快取下載檔案的目錄。

pip cache dir
pip cache purge

清除 pip 的下載快取。修復損壞的 wheel 檔案時很有用。

purge;list;info;remove <pattern>;--no-autoremove

pip cache purge
pip config list

印出目前的設定(環境變數 + site/全域/使用者範圍的 INI 檔)。

list;edit;get <name>;set <name> <value>;unset <name>;--global;--user;--site

pip config list
pip config set global.index-url <url>

把設定寫入當前的設定檔。

--global;--user;--site;--editor;<name> <value>

pip config set global.index-url https://my-mirror/simple

檢查

pip inspect

把每個已安裝套件的所有依賴、檔案與 metadata 記錄傾印為 JSON(Dependabot 等工具使用)。

pip inspect > installed.json

雜湊

pip install --require-hashes -r requirements.txt

使用雜湊鎖定的 requirements 安裝——pip 會拒絕雜湊不符的項目(可重現、防竄改)。

pip install --require-hashes -r requirements.txt
pip hash <file>

計算檔案的 SHA-256(預設)雜湊,供 `--require-hashes` 格式的 requirements 使用。

<file>;--algorithm sha256|sha384|sha512

pip hash ./mypkg-1.0-py3-none-any.whl

VCS

pip install git+ssh://[email protected]/<user>/<repo>@<ref>

透過 SSH 安裝(適合受 2FA 保護的私有套件)。

@<branch>;@<tag>;@<commit>

pip install git+ssh://[email protected]/me/[email protected]

虛擬環境整合

python -m venv .venv

建立虛擬環境(Python 標準函式庫的 virtualenv 替代品)。一旦啟用,pip 會自動安裝到虛擬環境中。

.venv;--system-site-packages;--prompt <name>;--without-pip;--upgrade-deps

python -m venv .venv && source .venv/bin/activate

雜項

pip debug --verbose

顯示 pip 版本、支援的 tag(`cp311-cp311-manylinux_2_28_x86_64`)以及可安裝的 Python 版本。

--verbose

pip debug --verbose | head -40
pip install --upgrade pip setuptools wheel

升級虛擬環境內的建置工具鏈——當 source distribution 需要較新 setuptools 時必要。

pip install --upgrade pip setuptools wheel

相關命令速查

關於 pip

pip 是 Python 標準的套件管理程式——遞迴縮寫「pip installs packages」。它由 Ian Bicking 於 2008 年建立,於 Python 2.7.9/3.4 起被納為 Python 標準函式庫的預設安裝器。pip 從 PyPI(Python Package Index)以及任何相容的 PEP 503 儲存庫安裝 Python 套件。目前穩定版線為 pip 24+(pip 25.x 起移除舊版解析器的警告)。pip 支援 wheel(.whl)、source distribution(.tar.gz)、VCS URL(`git+https://...`)與本地可編輯安裝(`pip install -e .`)。在多數工作流中,uv/Poetry/Hatch 已取代 pip 成為專案管理首選,但 pip 仍是最通用的後備方案——幾乎所有 Python 工具的文件都預設使用 `pip install <pkg>`。pip 以 MIT 授權,由 Python Packaging Authority(PyPA)發行。pip 不會上傳你的程式碼;它只從設定的索引取得套件。

速查頁版本 1.0.0