安全卸载所有第三方库应先用 pip freeze > requirements.txt 导出列表,再执行 pip uninstall -r requirements.txt -y,该方法默认跳过 pip、setuptools、wheel 等基础包,避免破坏环境。

直接用 pip uninstall 就行,但得注意它不会自动删依赖、不处理 setup.py install 安装的包、也不动系统级基础包。
卸载单个库:最常用也最容易出错
执行 pip uninstall requests 后会列出将被删除的文件路径,并停在确认提示(Proceed (y/n)?)。很多人直接回车,结果按了 Ctrl+C 或输错字母导致中断,其实输 y 或 yes 都可以,输 n 就取消。
- 加
-y参数跳过确认:pip uninstall -y requests - 如果包名拼错(比如
requets),会报WARNING: Skipping requets as it is not installed.,不是错误,只是没找到 - 卸载后用
pip show requests验证,返回空就说明成功了
卸载多个库:别手敲,用空格分隔就行
pip uninstall 原生支持一次传多个名字,不需要写多次命令。比如要卸载 numpy 和 pandas,直接运行:
pip uninstall numpy pandas -y
注意点:
- 名字之间用空格,不是逗号或换行
- 如果其中某个包不存在,pip 会跳过它并继续处理下一个,不会中断整个命令
- 不建议混用带版本号的名字(如
numpy==1.24.0),pip uninstall只认包名,版本信息会被忽略
卸载所有第三方库:靠 requirements.txt 最稳
想清空当前环境里的非系统包,最可靠的方式是先导出再批量卸载:
pip freeze > requirements.txt<br>pip uninstall -r requirements.txt -y
关键细节:
-
pip freeze输出的是所有包(含pip、setuptools、wheel),但pip uninstall -r默认不会动这三个——除非你显式写进requirements.txt并强制执行 - Windows 下删临时文件用
del requirements.txt,Linux/macOS 用rm requirements.txt - 如果中途失败(比如某个包被其他进程占用),剩下的包仍会继续卸载,不会回滚
卸载不了?可能是 setup.py install 装的
用 python setup.py install 安装的包,pip uninstall 通常识别不到,因为没写入 pip 的数据库。这时候有三个办法:
- 如果安装时加了
--record install.log,就用cat install.log | xargs rm -rf(Linux/macOS)或for /f %i in (install.log) do del /q "%i"(Windows)手动删 - 用
pip show 包名看Location:路径,然后去那个目录里找对应文件夹手动删(谨慎操作) - 最省事的是重建虚拟环境:
python -m venv new_env && new_env\Scripts\activate,旧环境直接丢弃
真正麻烦的不是命令怎么写,而是卸载后某些脚本还残留 import 语句,或者依赖链断裂导致其他包功能异常——动手前最好确认有没有正在运行的服务或未提交的代码依赖这些包。











