如何区分Python默认预装PIP包与用户自行安装的PIP包
区分Python自带包和手动安装包的方法
- 方法1:对照纯净Python环境的默认pip列表
官方纯净版Python安装完成后,默认通过pip管理的自带包只有pip和setuptools两个,其余出现在pip list里的包均为后续手动安装、或安装其他第三方包时自动安装的依赖包。 - 方法2:查询包的依赖关系
执行命令pip show <包名>,查看返回结果里的Required-by字段:如果字段为空,说明没有其他包依赖该包,大概率是你主动安装的顶层包;如果字段有值,说明是对应依赖包的附属依赖。
也可以直接执行pip list --not-required,会直接列出所有不被其他包依赖的顶层包,这些就是你可以优先选择卸载的对象。
针对你给出的pip列表的具体判断结果:
- 属于默认自带、不建议卸载的包:
pip、setuptools,这两个是Python包管理的核心工具,卸载后会无法正常使用pip安装/卸载其他包。 - 属于主动安装的顶层包:
pygame、requests,这两个没有被其他包依赖的话可以直接按需卸载。 - 属于第三方包的附属依赖:
certifi、charset-normalizer、idna、urllib3,这四个都是requests的依赖包,是安装requests时自动安装的,如果你卸载了requests且没有其他包依赖这四个包,就可以同步卸载。
内容的提问来源于stack exchange,提问作者Abdullah Mustafa
相关产品推荐
相关产品推荐

