参考链接:https://pip.pypa.io/en/stable/user_guide/#user-guide
判断是否安装:
pip --version
pip3 --version
获取帮助:
pip --help
升级pip:
pip install -U pip
pip3 install --upgrade pip
安装包:
pip install SomePackage # 最新版本
pip install SomePackage==1.0.4 # 指定版本
pip install 'SomePackage>=1.0.4' # 最小版本
升级包:
pip install --upgrade SomePackage
pip install -U SomePackage
升级指定的包,通过使用==, >=, <=, >, < 来指定一个版本号。
卸载包:
pip uninstall SomePackage
搜索包:
pip search SomePackage
显示安装包信息:
pip show SomePackage
查看指定包的详细信息
pip show -f SomePackage
列出已安装的包
pip list
查看可升级的包
pip list -o
列出安装包的描述信息
pip freeze
批量安装库
如果一个项目需要安装很多库,可以将他们放入一个文件 requirements.txt,例如那可以批量安装:
pip install -r requirements.txt
requirements.txt 文件内容格式如下:
netkiller-logging==0.0.4
netkiller-firewall
操作演示
neo@MacBook-Pro-Neo ~ % vim requirements.txt
neo@MacBook-Pro-Neo ~ % cat requirements.txt
netkiller-logging
netkiller-firewall
neo@MacBook-Pro-Neo ~ % pip install -r requirements.txt
Collecting netkiller-logging
Downloading netkiller_logging-0.0.5-py3-none-any.whl (14 kB)
Collecting netkiller-firewall
Downloading netkiller_firewall-0.0.1-py3-none-any.whl (5.4 kB)
Installing collected packages: netkiller-logging, netkiller-firewall
导出已经安装的包列表,并保存到到本地文件中:
pip freeze > requirements.txt
安装wheel文件
pip install dist/netkiller_firewall-0.0.1-py3-none-any.whl
操作演示
neo@MacBook-Pro-Neo ~ % cd workspace/firewall
neo@MacBook-Pro-Neo ~/workspace/firewall % ls dist
netkiller-firewall-0.0.1.tar.gz netkiller_firewall-0.0.1-py3.9.egg
netkiller_firewall-0.0.1-py3-none-any.whl
neo@MacBook-Pro-Neo ~/workspace/firewall % pip install dist/netkiller_firewall-0.0.1-py3-none-any.whl
Processing ./dist/netkiller_firewall-0.0.1-py3-none-any.whl
Installing collected packages: netkiller-firewall
Successfully installed netkiller-firewall-0.0.1
目录
兼容性检查
验证已安装的包是否有兼容依赖问题
pip check package-name
操作演示
neo@MacBook-Pro-Neo ~ % pip check netkiller-firewall
No broken requirements found.
从 PyPI 下载 whl 文件到本地硬盘
将库下载到本地指定目录
pip download package_name -d "要保存的文件路径"
操作演示
neo@MacBook-Pro-Neo ~ % pip download netkiller-logging -d /tmp/netkiller-logging
Collecting netkiller-logging
Using cached netkiller_logging-0.0.5-py3-none-any.whl (14 kB)
Saved /private/tmp/netkiller-logging/netkiller_logging-0.0.5-py3-none-any.whl
Successfully downloaded netkiller-logging
neo@MacBook-Pro-Neo ~ % ls /tmp/netkiller-logging
netkiller_logging-0.0.5-py3-none-any.whl
切换 pip 镜像
由于 pip 源服务器放在外国,所以我们安装包的时候速度非常慢。
国内一些企业和组织做了 pip 镜像,他们每个一定时间从外国服务器同步一次数据到国内服务器,我们将 pip 切换到国内服务器后,再下载包就不会去外国服务器,所以下载速度大大提高。
临时下载一个包
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib
永久性切换
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
设为默认后,以后安装库都将从清华镜像源下载
下面是国内常用镜像服务器地址:
清华镜像https://pypi.tuna.tsinghua.edu.cn/simple
阿里云镜像https://mirrors.aliyun.com/pypi/simple/
中科大镜像https://mirrors.bfsu.edu.cn/pypi/web/simple/
豆瓣镜像http://pypi.doubanio.com/simple
pip 清华大学开源软件镜像站
使用国内镜像速度会快很多:
临时使用:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
例如,安装 Django:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Django
如果要设为默认需要升级 pip 到最新的版本 (>=10.0.0) 后进行配置:
pip install pip -U pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
如果您到 pip 默认源的网络连接较差,临时使用本镜像站来升级 pip:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U