應用場景:在使用python的科研場景中,
我們經常需要對每個新專案配置不同的環境包,來支援程式的順利執行。
其中最常用的python環境包安裝命令,是 pip install
。
pip
是目前最常用的 Python 包管理工具之一,它提供了對 Python 包的下載、安裝、解除安裝等管理功能。
但是,pip下載的預設官方源為:https://pypi.org/simple。
在國內對這個源的下載速度是非常慢的,通常只有十幾kb/s,這會嚴重影響科研效率。
解決辦法就是將pip的下載源設定為國內的源,這樣下載速度就能得到大幅提升。
目前國內幾個常用的源有:
- 阿里雲:http://mirrors.aliyun.com/pypi/simple/
- 清華大學:https://pypi.tuna.tsinghua.edu.cn/simple/
- 中國科學技術大學:http://pypi.mirrors.ustc.edu.cn/simple/
對於換源的操作,主要有兩種方式:
- 方式一:直接修改配置檔案
這個方法是一勞永逸的,設定好配置檔案後,照常使用pip install命令,pip預設就會從國內源下載包。
具體操作(以linux系統下為例):
修改 ~/.pip/pip.conf (沒有就建立一個), 內容如下:
[root@localhost .pip]# cat ~/.pip/pip.conf
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
- 方式二:在每次使用命令時,透過
--index
或-i
引數臨時指定下載源。
我個人更推薦方式二,原因是部分比較新的python包,國內的源有時候還沒更新,
如果採用方式一直接更改配置檔案,那麼因為在源中找不到對應包,會導致下載失敗。
而方式二,可以在安裝常用包時指定國內源,安裝較新的包時使用預設的官方源。
也就是說,方式二使用起來更為靈活。
具體操作(以更換清華源為例):
pip install --index https://pypi.tuna.tsinghua.edu.cn/simple/ scikit-learn
or
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ scikit-learn
當然,也可以先採用方式一更改配置檔案,
如果發現有國內源安裝不了的包,再用-i
引數指定下載源為pip的官方源https://pypi.org/simple
。
效果也是一樣的。