pip list¶
用法¶
python -m pip list [options]
py -m pip list [options]
說明¶
列出已安裝的套件,包含可編輯套件。
套件會以不分大小寫的排序順序列出。
選項¶
- -o, --outdated¶
列出過時的套件
(環境變數:
PIP_OUTDATED
)
- -u, --uptodate¶
列出最新的套件
(環境變數:
PIP_UPTODATE
)
- -e, --editable¶
列出可編輯的專案。
(環境變數:
PIP_EDITABLE
)
- -l, --local¶
如果在具有全球存取權的 virtualenv,則不要列出全球安裝的套件。
(環境變數:
PIP_LOCAL
)
- --user¶
僅輸出已安裝在使用者網站中的套件。
(環境變數:
PIP_USER
)
- --path <path>¶
在列出套件時,限制為指定的安裝路徑(可多次使用)。
(環境變數:
PIP_PATH
)
- --pre¶
包含前發布和開發版本。預設情況下,pip 僅找到穩定版本。
(環境變數:
PIP_PRE
)
- --format <list_format>¶
從下列選項中選擇輸出格式:欄位(預設值)、凍結或 json。無法將「凍結」格式搭配 --outdated 選項使用。
(環境變數:
PIP_FORMAT
)
- --not-required¶
列出已安裝套件的相依套件中沒有包含的套件。
(環境變數:
PIP_NOT_REQUIRED
)
- --exclude-editable¶
自輸出中排除可編輯套件。
(環境變數:
PIP_EXCLUDE_EDITABLE
)
- --include-editable¶
自輸出中包含可編輯套件。
(環境變數:
PIP_INCLUDE_EDITABLE
)
- --exclude <package>¶
自輸出中排除指定的套件
(環境變數:
PIP_EXCLUDE
)
- -i, --index-url <url>¶
Python Package Index 的基本 URL(預設 https://pypi.org/simple)。此處應指向與 PEP 503 (簡單存放庫 API) 相容的存放庫或以相同格式布局的本機目錄。
(環境變數:
PIP_INDEX_URL
,PIP_PYPI_URL
)
- --extra-index-url <url>¶
除了 --index-url 之外還要使用的其他套件索引 URL。應遵循與 --index-url 相同的規則。
(環境變數:
PIP_EXTRA_INDEX_URL
)
- --no-index¶
忽略套件索引(只查看 --find-links URL)。
(環境變數:
PIP_NO_INDEX
)
例子¶
列出已安裝的套件(有預設欄位格式)。
$ python -m pip list Package Version ------- ------- docopt 0.6.2 idlex 1.13 jedi 0.9.0
C:\> py -m pip list Package Version ------- ------- docopt 0.6.2 idlex 1.13 jedi 0.9.0
列出有欄位格式的過期套件。
$ python -m pip list --outdated --format columns Package Version Latest Type ---------- ------- ------ ----- retry 0.8.1 0.9.1 wheel setuptools 20.6.7 21.0.0 wheel
C:\> py -m pip list --outdated --format columns Package Version Latest Type ---------- ------- ------ ----- retry 0.8.1 0.9.1 wheel setuptools 20.6.7 21.0.0 wheel
列出不屬於其他套件相依性的套件。可結合其他選項使用。
$ python -m pip list --outdated --not-required Package Version Latest Type -------- ------- ------ ----- docutils 0.14 0.17.1 wheel
C:\> py -m pip list --outdated --not-required Package Version Latest Type -------- ------- ------ ----- docutils 0.14 0.17.1 wheel
使用 json 格式
$ python -m pip list --format=json [{'name': 'colorama', 'version': '0.3.7'}, {'name': 'docopt', 'version': '0.6.2'}, ...
C:\> py -m pip list --format=json [{'name': 'colorama', 'version': '0.3.7'}, {'name': 'docopt', 'version': '0.6.2'}, ...
使用凍結格式
$ python -m pip list --format=freeze colorama==0.3.7 docopt==0.6.2 idlex==1.13 jedi==0.9.0
C:\> py -m pip list --format=freeze colorama==0.3.7 docopt==0.6.2 idlex==1.13 jedi==0.9.0
列出以可編輯模式安裝的套件
當有些套件是使用可編輯模式安裝時,pip list
會輸出額外的欄位,顯示可編輯專案的目錄位置(也就是包含有 pyproject.toml
或 setup.py
檔案目錄)。
$ python -m pip list Package Version Editable project location ---------------- -------- ------------------------------------- pip 21.2.4 pip-test-package 0.1.1 /home/you/.venv/src/pip-test-package setuptools 57.4.0 wheel 0.36.2C:\> py -m pip list Package Version Editable project location ---------------- -------- ---------------------------------------- pip 21.2.4 pip-test-package 0.1.1 C:\Users\You\.venv\src\pip-test-package setuptools 57.4.0 wheel 0.36.2
json 格式會輸出額外的 editable_project_location
欄位。
$ python -m pip list --format=json | python -m json.tool [ { "name": "pip", "version": "21.2.4", }, { "name": "pip-test-package", "version": "0.1.1", "editable_project_location": "/home/you/.venv/src/pip-test-package" }, { "name": "setuptools", "version": "57.4.0" }, { "name": "wheel", "version": "0.36.2" } ]C:\> py -m pip list --format=json | py -m json.tool [ { "name": "pip", "version": "21.2.4", }, { "name": "pip-test-package", "version": "0.1.1", "editable_project_location": "C:\Users\You\.venv\src\pip-test-package" }, { "name": "setuptools", "version": "57.4.0" }, { "name": "wheel", "version": "0.36.2" } ]
注意事項
與 freeze
命令不同,pip list --format=freeze
報告的可編輯安裝資訊,是套件在安裝當時的版本,而不是後續的版本資訊。