前言
pip 下载速度慢,怎么办?pip 怎么管理包?
国内镜像的这些换源方法以及pip的用法,你应该知道
pip 是 Python 的包管理工具,允许用户方便地安装、升级和管理 Python 包和库。
是 Python 官方推荐的包管理工具,通常在安装 Python 时默认安装。
下面附上常用的 pip 换源的镜像源地址
国内常用源的地址如下:
- 清华大学源 镜像地址:
https://pypi.tuna.tsinghua.edu.cn/simple
- 阿里云源 镜像地址:
https://mirrors.aliyun.com/pypi/simple
- 豆瓣源 镜像地址:
https://pypi.douban.com/simple
- 中国科学技术大学源 镜像地址:
https://pypi.mirrors.ustc.edu.cn/simple
- 腾讯云源 镜像地址:
https://mirrors.cloud.tencent.com/pypi/simple
注:大家根据自身需要选择合适的镜像源,个人推荐中科大的镜像源
换源有两种方法:
一、临时换源
比如这里,下载某个包的时候临时将镜像源换成清华源
pip install package_name -i https://pypi.tuna.tsinghua.edu.cn/simple
package_name 为要 pip安装的包
二、永久换源
通过修改配置文件来永久使用某个镜像源:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
三、重置镜像源
通过下面命令查看当前设置的镜像源:
pip config list
删除全局设置的镜像源:
pip config unset global.index-url
删除用户级别设置的镜像源:
pip config unset global.index-url --user
如果还设置了其他镜像源(如 extra-index-url),也需要一并删除:
pip config unset global.extra-index-url --user
四、其他关于 pip 的操作和设置
检查 pip 的版本:
pip --version
更新 pip 本身:
pip install --upgrade pip
查看当前环境中已安装的所有包及其版本信息:
pip list
安装包与卸载包:
# 安装
pip install package_name
# 卸载
pip uninstall package_name
package_name 为包的名字
删除当前环境的所有 pip 缓存:
pip cache purge
删除特定包的缓存:
pip cache remove package_name
package_name 为要删除的包的名字
希望安装特定版本的包,可以使用 == 语法:
pip install package_name==1.0.0
遇到下载不稳定时,可以设置超时时间:
例如,将超时时间设置为 10 秒:
pip install package_name --timeout 10
将当前环境的包导出:
pip freeze > requirements.txt
从 requirements.txt
安装指定包:
pip install -r requirements.txt
自定义源时的信任设置:
比如信任清华源:
pip install package_name --trusted-host pypi.tuna.tsinghua.edu.cn
package_name 为要pip安装的包
五、附录
下面这几个包往往都需要换源进行pip安装,经常会出现下载速度缓慢的情况…
scikit_image
opnecv-python
numpy
numba
matplotlib
有时候明明尝试换源了,但是还是很难下载安装对应的安装包,常见以下错误:
换源之后下载的包无法匹配其他依赖包:
ERROR: Could not find a version that satisfies the requirement …
网络连接不上:
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by ‘NewConnectionError(’<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f4248ebf7c0>: Failed to establish a new connection: [Errno 101] 网络不可达’)':…
raise ReadTimeoutError(self._pool, None, “Read timed out.”)
pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host=‘files.pythonhosted.org’, port=443): Read timed out.
加载超时:
return self._sslobj.read(len, buffer)
socket.timeout: The read operation timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):…
可以尝试到官网手动下载安装: Python Package 官网
比如搜索:numpy
选择第一个
点击左侧选择 发布的历史版本
点击左侧下载,然后根据需求下载对应的 whl 文件
比如:这里选择 numpy1.19.5 ,然后python是3.9选择cp39后缀,然后是linux系统x86 架构则选择
numpy-1.19.5-cp39-cp39-manylinux2010_x86_64.whl
下载完成后,到对应的环境中使用pip install 命令即可
pip install xxxxx.whl