能恢复,但必须满足 python 2.7.9+ 或 3.4+ 且未禁用 ensurepip;python -m ensurepip 默认只装包不建脚本,需加 --default-pip 和 --upgrade 参数,并确保 scripts/ 或 bin/ 目录已加入 path。

能恢复,但必须满足 Python 2.7.9+ 或 3.4+,且安装时未禁用 ensurepip;直接运行 python -m ensurepip 通常就能重建 pip,但默认不升级、不加用户安装路径,容易装完还找不到命令。
为什么 python -m ensurepip 运行后 pip 命令仍不可用?
常见现象是终端报错 command not found: pip 或 'pip' is not recognized as an internal or external command。根本原因是:ensurepip 默认只安装 pip 包到 Python 的 site-packages,不自动创建可执行脚本(pip 或 pip3)到 Scripts/(Windows)或 bin/(macOS/Linux)目录。
- Windows 下:脚本应生成在
Python\Scripts\pip.exe,若该目录不在PATH环境变量中,就无法全局调用 - macOS/Linux 下:脚本应生成在
python -m site --user-base/bin 或系统bin/目录,但默认不启用--user模式 - 即使生成了脚本,若 Python 安装是通过包管理器(如 apt、brew)或 pyenv 安装的,其
bin/目录可能未加入PATH
如何让 ensurepip 真正“装好” pip?
关键靠两个参数:--default-pip(强制安装 pip 及其可执行脚本)和 --upgrade(避免装出极老版本)。推荐组合使用:
python -m ensurepip --default-pip --upgrade
这个命令会:
- 在当前 Python 解释器环境下安装或升级
pip和setuptools - 生成
pip、pip3(或pip3.x)等可执行脚本到对应Scripts/或bin/目录 - 跳过“已存在则跳过”的默认行为,确保脚本落地
如果提示权限错误(如 macOS/Linux 上写系统路径失败),加 --user 参数走用户级安装:
python -m ensurepip --default-pip --upgrade --user
此时脚本会放在 python -m site --user-base/bin(Linux/macOS)或 Python\PythonXX\Scripts(Windows 用户级安装路径),需确认该路径已加入 PATH。
验证是否成功 & 常见补救点
运行 python -m pip --version 是最可靠的验证方式——它绕过 shell 查找,直连 Python 内置模块。若成功,说明 pip 包已就位;再试 pip --version,失败则说明脚本路径没生效。
- Windows:检查
where pip是否返回路径;若无,把Python\Scripts\加进系统PATH - macOS/Linux:运行
echo $PATH看是否含~/Library/Python/X.Y/bin(macOS)或~/.local/bin(Linux);若不含,追加export PATH="$HOME/.local/bin:$PATH"到~/.bashrc或~/.zshrc - pyenv 用户:确保已执行
pyenv rehash,否则新装的 pip 脚本不会被识别 - 某些 Linux 发行版(如 Ubuntu)会把
pip分离为python3-pip包,此时ensurepip可能因系统策略受限,优先考虑sudo apt install python3-pip
真正麻烦的不是装不上,而是装上了却不知道脚本该在哪、PATH 没配对、或者用了 pyenv/conda 却忘了激活环境——这些地方比 ensurepip 本身更常卡住人。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











