pip
pip 24+pip 包管理器 CLI 命令快速参考:安装 / 卸载 / 检查包、虚拟环境、requirements 文件、配置与索引管理,并附带常用参数和实操示例。
37 条命令
帮助
pip --version打印 pip 版本及其指向的 Python 解释器。
pip --versionpip --help列出所有 pip 子命令。
pip --helppip <subcommand> --help显示某个 pip 子命令的所有参数。
pip install --help | head -60自身
python -m pip --version以 Python 模块方式运行 pip——在存在多个 Python 解释器的系统上比直接 `pip` 更受推荐。
python -m pip --versionpython -m pip install --upgrade pip把 pip 升级到最新版本。配合 `python -m ensurepip` 可向缺少 pip 的 venv 中引导安装 pip。
python -m pip install --upgrade pippython -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 requestspip 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.txtpip 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/simplepip install <pkg> --extra-index-url <url>在默认索引之外再搜索一个额外索引。用 `--no-index` 完全禁止远程拉取。
pip install <pkg> --extra-index-url https://my-mirror/simplepip install --user <pkg>安装到用户的 site-packages(`~/.local/`),而不是系统 Python。
--user;--target <dir>
pip install --user pipxpip 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.txtpip list --outdated列出有更新版本可用的已安装包。
--outdated;--format columns|freeze|json
pip list --outdated --format=columnspip show <pkg>显示单个已安装包的元数据:版本、位置、requires、required-by、summary。
-f 显示每个文件;--files 同;<pkg>...
pip show -f requestspip check验证已安装包的依赖是否兼容——暴露破坏性的依赖冲突。
pip checkpip 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 requestspip 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 ./wheelspip search <query>按名称 / 摘要搜索 PyPI(目前已被 PyPI 禁用;请改用网页)。
pip search 'fastapi'pip wheel <pkg>为项目及其依赖构建 wheel 到输出目录。
-w <dir>;--no-deps;--no-binary :all:;--no-build-isolation
pip wheel . -w ./wheelspip cache dir打印 pip 用来缓存已下载文件的目录。
pip cache dirpip cache purge清空 pip 的下载缓存。在排查损坏的 wheel 时很有用。
purge;list;info;remove <pattern>;--no-autoremove
pip cache purgepip config list打印当前生效的配置(env 变量 + site / global / user 范围的 INI 文件)。
list;edit;get <name>;set <name> <value>;unset <name>;--global;--user;--site
pip config listpip config set global.index-url <url>把一项设置持久化到当前配置文件。
--global;--user;--site;--editor;<name> <value>
pip config set global.index-url https://my-mirror/simple检查
pip inspect以 JSON 形式导出每个已安装包的依赖、文件与元数据(Dependabot 等会用到)。
pip inspect > installed.json哈希
pip install --require-hashes -r requirements.txt按哈希锁定的 requirements 安装——哈希不匹配则 pip 拒绝安装(可复现、防篡改)。
pip install --require-hashes -r requirements.txtpip hash <file>计算文件的 SHA-256(默认)哈希值,供 `--require-hashes` requirements 使用。
<file>;--algorithm sha256|sha384|sha512
pip hash ./mypkg-1.0-py3-none-any.whlVCS
pip install git+ssh://[email protected]/<user>/<repo>@<ref>通过 SSH 安装(用于启用了 2FA 的私有包)。
@<branch>;@<tag>;@<commit>
pip install git+ssh://[email protected]/me/[email protected]Venv 集成
python -m venv .venv创建虚拟环境(Python 标准库中 virtualenv 的替代品)。激活后 pip 会自动装入 venv。
.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`)以及 pip 可安装的 Python 版本。
--verbose
pip debug --verbose | head -40pip install --upgrade pip setuptools wheel升级 venv 内的构建工具链——源码分发需要较新 setuptools 时必需。
pip install --upgrade pip setuptools wheel相关命令速查
商标与使用声明
本批命令行工具速查手册为开源社区参考资料。文中涉及的各工具的名称、标识、商标(如 Git™、Docker™、Kubernetes®、kubectl、PostgreSQL®、MySQL®、Redis™、MongoDB®、Linux™、PowerShell™、Vim™ 等)均归对应权利人所有,此处仅为识别与参考之目的使用。
本速查手册的全部内容均为独立编写的简化自包含参考,**与任何官方文档不存在隶属、被认可或引用关系**。命令列表、参数说明、示例均为作者原创简化表达;如需权威信息,请参阅各工具的官方文档。
命令语法与参数可能在不同工具版本中有所差异。所示版本标签对应稳定发布版本;其他版本行为可能有所不同。本速查手册**不代表**商标权利人的任何偏好或推荐。
如商标或版权方认为本站部分内容存在权益侵害,请发送邮件至[email protected],我们在收到有效权属证明后,会在合理期限内修改或移除相关内容。
本网站不对因使用本站信息而产生的任何直接或间接损失承担法律责任。
关于 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 不再提示旧版 resolver 警告)。pip 支持 wheel(.whl)、源码分发(.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