在 Windows 上,可以先检查缓存位置和大小,再用 py -m pip cache purge 清理 pip 缓存。它处理缓存下载内容和 wheel,不会卸载 Python 环境中已经安装的包。如果只想移除某个包的缓存 wheel,可以定向删除,不必清空全部缓存。
使用平常的 Python 检查缓存
打开“开始 → 命令提示符”,使用平常开发的账户。以下步骤假定 Python、pip 已安装,并且可以使用 py 命令:
py -m pip --version
py -m pip cache dir
py -m pip cache info
保留输出,确认检查的是哪套安装及哪份缓存。dir 返回配置中的缓存目录,info 报告内容和大小。先看结果,再判断是否需要删除。
Windows 常见默认路径为 %LocalAppData%\pip\Cache,但不要假定它与自己的配置一致。把命令返回的路径粘贴到文件资源管理器中检查,再在“此电脑”里记录对应驱动器的可用空间。
如果平常在已激活的虚拟环境中使用 python -m pip,本篇后续命令也统一使用这个前缀。如果 py 和 python 都没有指向平常使用的安装,先定位正确解释器,不要碰巧找到哪个 pip 就用哪个。
pip 缓存命令参考列出了检查和维护方法。整个操作过程应使用一致的解释器前缀。
选择定向删除还是全部清理
删除缓存前,先结束或等待当前 pip 安装完成。选择方式取决于测量结果:一个不想保留的构建缓存,与一整批占据空间的下载缓存,应分别处理。
删除某个包的缓存 wheel
先列出对应 wheel,再删除。下面以 setuptools 为例,应替换为自己确实要检查的包名:
py -m pip cache list setuptools
py -m pip cache remove setuptools
删除没有内置撤销功能。后续安装可能需要再次下载或构建这个包,但环境中已安装的包与缓存副本是分开的。如果必须保留当前缓存,应在第二条命令之前停止。
定向删除 wheel 不会清空 HTTP 缓存。如果剩余占用主要来自 HTTP 数据,删除一个包的 wheel 无法回收所有空间。不要仅为增加删除数量而使用宽泛的通配符。
清理可复用的全部缓存
需要清理此操作管理的 wheel 和 HTTP 缓存文件时,执行:
py -m pip cache purge
这个操作没有内置回滚,也不经过通常的回收站流程。以后安装可能需要重新下载或构建 wheel。清理前确认所需包来源和认证可用;如果接下来需要依赖当前缓存工作,而网络不可靠,应推迟执行。
pip 没有恢复刚才那份缓存的命令。后续安装可以产生新缓存,但这不等于找回旧文件。也不需要为了重新填充缓存而重装整个环境。
检查清理结果
再次运行同一组检查命令:
py -m pip cache dir
py -m pip cache info
比较缓存大小和驱动器可用空间。应使用实际输出和测量值,而不是预设清理一定能释放多少 GB。
残留小文件夹或随后重新生成缓存,不一定代表失败。后续下载会再次产生内容,测量空间时不要同时安装包。
如果命令报错,保留信息并核对路径,不要扩大删除范围。权限问题不意味着可以删掉整个用户目录,或修改所有 AppData 文件夹的所有权。先确认账户,并停止同时运行的安装任务。
wheel 缓存与 HTTP 缓存的区别
pip 会缓存 HTTP 响应和可复用的本地构建 wheel。wheel 是安装使用的包分发格式,缓存副本与环境里已经安装的内容并不是同一份文件。
pip 缓存说明解释了这两类内容及其删除方式。内部目录结构可能随版本变化,使用 pip 命令比猜测陌生子目录更合适。
缓存也不等于项目代码、数据集、模型文件或虚拟环境。这些内容同样可能很大,但用途和恢复条件不同。仅看到与 Python 有关的名称,无法证明一个文件夹是可删除的 pip 缓存。
本篇方法不会清理 Conda 包缓存,也不会移除闲置环境。使用多个包管理器时,应先识别占用空间的目录属于哪一个工具。
多个环境不一定对应多份缓存
对要检查的环境,分别使用其解释器运行 cache dir。两个环境可能返回同一个路径,这种情况下,从两边各清一次不会得到两份独立的空间收益。
不同配置也可能指向不同路径。每次删除前都记录目录,不要把一套 Python 清理成功,理解成所有开发工具的缓存都已清空。
移除虚拟环境应作为另一项任务处理。删环境会移除已安装包,需要重建;清理 pip 缓存则保留这些包。不论采用哪种清理方式,都应保留项目需求清单和其他依赖记录。
想检查更多系统盘占用,可以参考 Windows 清理指南。同时使用 JavaScript 工具时,npm 缓存指南介绍了另一套独立的命令。
不必因为一次清理就禁用缓存
--no-cache-dir 用于禁用某次操作的缓存行为,不是清除已有缓存的必要条件。日常一直禁用缓存,可能增加重复下载和构建。
应根据工作流程取舍:一次清理可以腾出当前空间,保留缓存则有助于减少后续重复工作。不要仅因一次清理有效,就给每个项目都加上禁用缓存的参数。
如果缓存持续增长,应先比较 pip 与其他 Python 数据的实际占用。更大的来源可能是已安装环境或数据集,清空 pip 无法回收那些空间。
在 AiCleanDisk Pro 中检查 Python 缓存
AiCleanDisk Pro的自动清理项目包含 pip 缓存,开发类项目在“显示所有项目”中提供。每个项目有风险级别,清理前会要求确认。系统盘扫描和自动清理免费,但 AI 自动清理除外;其他驱动器扫描、AI 分析、AI 自动清理和文件夹迁移需要许可证。费用为 30 天 4.99 美元、六个月 16.90 美元或一年 19.90 美元,一次性付款,不自动续费。