5.2.pip笔记
pip 是 Python 官方的 package 管理程序(package installer for Python),主要用于安装、卸载或下载 Python package。pypi(Python Package Index)是Python 官方 package 仓库,可以使用 pip 从 pypi 安装 package。pip 只能安装 Python package,不能安装非 Python package,也不能创建 Python 虚拟环境。
pip 镜像源
- 阿里云:https://mirrors.aliyun.com/pypi/simple
- 网易云:https://mirrors.163.com/pypi/simple
- 华为云:https://repo.huaweicloud.com/repository/pypi/simple
- 腾讯云:https://mirrors.cloud.tencent.com/pypi/simple
- 清华大学:https://pypi.tuna.tsinghua.edu.cn/simple
- 北京外国语大学:https://mirrors.bfsu.edu.cn/pypi/web/simple
为 pip 指定镜像源
临时使用
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
设为默认
升级 pip 到最新的版本 (>=10.0.0) 后进行配置:
pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
临时使用清华镜像站来升级 pip:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U
安装 package
# 从指定的requirements文件安装需要的package
pip install -r
pip install --requirement
# 更新package
pip install -U
pip install --upgrade
# 更新package时指定处理依赖的策略
## 所有依赖会被更新
pip install --upgrade-strategy eager
## 如果依赖依然满足要求 则不会更新依赖
pip install --upgrade-strategy only-if-needed
# 强制重装package
pip install --force-reinstall
# 从指定的Python Package Index 安装package
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple
# 从本地目录安装package
pip install -r <file> --no-index --find-links <local path>
# 不安装软件包依赖项
pip install --no-deps
# 将软件包安装到当前系统平台的用户安装目录
pip install --user
设置 Package Index
-i, --index-url <url> 指定 Package Index URL
--extra-index-url <url> 除了使用 --index-url 指定的 URL
还使用 --extra-index-url 指定的 URL
--no-index 忽略package index
仅在 --find-links 指定的URL中查找包
-f, --find-links <url> 可以是一个网址,或者储存了package的本地目录
下载 package
# 从清华镜像下载 requirements 文件指定的 package 到当前目录
pip download -r <file> -d . -i https://pypi.tuna.tsinghua.edu.cn/simple
pip download --only-binary=:all: \
--platform macosx-10_10_x86_64 \
--python-version 27 \
--implementation cp \
SomePackage
检查依赖是否满足
# 检查numpy的依赖是否满足
pip check numpy
显示已安装的 package 的信息
# 可以显示 版本信息、安装位置、依赖该package的packages 等等
pip show numpy
在 PyPi 搜索 package
pip search numpy
输出安装的 package 列表
# 默认为 columns 格式
pip list
# 以freeze格式输出
pip list --format freeze
# 以json格式输出
pip list --format json
# 以 freeze 格式输出
pip freeze
# 输出到文件
pip freeze > <file>
更新 pip
python -m pip install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple
缓存管理
# 查看当前缓存目录
pip cache dir
# 显示缓存的相关信息
pip cache info
# 列出缓存中的 package 名字
pip cache list
# 从缓存中移除指定 package
pip cache remove
# 删除所有 package 的缓存
pip cache purge