常用命令
命令 | 说明 |
---|---|
pip list | 查看已安装的库 |
pip list -o | 查看可升级的库 |
pip download -d (download path) | 下载库的安装包, 可以结合-i参数来改变源地址,如 pip -i https://pypi.tuna.tsinghua.edu.cn/simple/ |
pip download -d (download path) -r (requirements.txt) | 将requirements.txt里面写的包统统下载 |
pipdeptree -p (package name) | 查看(package name)的依赖包 |
pipdeptree -p (package name) -r | 查看哪些包依赖于(package name) |
pip install -r requirements.txt --no-index --find-links=(local path) | 根据requirements.txt文件寻找本地安装包 |
pip freeze > F:\requirements.txt | 导出已安装的包列表 |
例子
1. 删掉无用的包
有个小朋友提了个问题:可不可以删掉python里面没有用的包,就像清理没用的东西一样。我想到要删掉包要看它现在有没有被需要,就要用到pipdeptree的查看命令(例如zipp这个包):
>pipdeptree -p zipp -r
zipp==1.2.0
- importlib-metadata==2.0.0 [requires: zipp>=0.5]
- virtualenv==20.1.0 [requires: importlib-metadata>=0.12,<3]
- importlib-resources==3.3.0 [requires: zipp>=0.4]
- virtualenv==20.1.0 [requires: importlib-resources>=1.0]
看起来还有东西要依赖它,所以不能直接删掉,除非上面列出来的包都不用了。
2. 下载离线包到无法连线的电脑上去安装
有个小朋友提了个问题:有些电脑(例如公司电脑)没办法上网,但是能接收外部邮件,那可不可以在家下载好安装包然后发到公司安装?答案是肯定的,但是因为很有可能想要安装的包有很多相应的依赖,经常因为依赖没有而不得不再去找依赖包传到公司,这样太费事了,所以我们要利用pipdeptree导出依赖关系,然后编辑依赖关系批量下载相关安装包。
>pipdeptree -p virtualenv > F:\requirements.txt
接着编辑requirements.txt然后执行命令(因为上面导出来的文件不是标准的requirements.txt,记得要把安装顺序调整好):
>pip download -d F:\pythonpkgs -r F:\requirements.txt
然后把requirements.txt文件和相关的包文件发送到公司里面,在公司的电脑里面运行:
>pip install -r requirements.txt --no-index --find-links=F:\pypkgs
就可以顺利完成了。