??看這篇文章的目錄,大家會(huì)發(fā)現(xiàn)寫的很詳細(xì),適合收藏哦。如果你是剛學(xué)python的小白也沒關(guān)系!看完這篇文章,關(guān)于pip的一切你就懂了。
??關(guān)于pip的命令需要使用命令行,那么打開命令行界面:
- win+s/win+r快捷鍵都行,然后輸入cmd后回車就能調(diào)出命令行界面了
一、pip設(shè)置國內(nèi)源:
??python以入門簡單和豐富的第三方庫著稱,所以關(guān)于python的第三方庫安裝,也顯得非常重要。python要安裝第三方庫,用的是pip包管理工具, 而pip 也已內(nèi)置于 Python 3.4 和 2.7 及以上版本,可以直接使用。
??例如最常用的安裝操作:
pip install package_name
??但是你會(huì)發(fā)現(xiàn)下載速度差強(qiáng)人意,只有幾k每秒,甚至?xí)?bào)紅提示錯(cuò)誤,這是因?yàn)閜ython官方的地址在國內(nèi)不是很穩(wěn)定,所以我找到了幾個(gè)國內(nèi)的第三方鏡像,我們可以使用這些地址作為下載源,這樣就能解決pip下載慢的情況。
- 清華大學(xué):https://pypi.tuna.tsinghua.edu.cn/simple
- 阿里云:http://mirrors.aliyun.com/pypi/simple
- 豆瓣:http://pypi.douban.com/simple
- 中科大:https://pypi.mirrors.ustc.edu.cn/simple
- 網(wǎng)易: https://mirrors.163.com/pypi/simple
- 華為:https://repo.huaweicloud.com/repository/pypi/simple
- 騰訊:https://mirrors.cloud.tencent.com/pypi/simple
那么
1.1如何本地配置源:
1.1.1 方法1:下載的時(shí)候指定地址
??例如我們在下載包的命令后面,加上-i指令和對應(yīng)的地址,就可以從這個(gè)地址下載包
pip install package_name -i https://pypi.tuna.tsinghua.edu.cn/simple
1.1.2 方法2:使用pip命令生成配置文件
??上面那種方法很好,但是每次都要定義一下也太麻煩了吧,所以這次我們使用pip的config set命令,在電腦上生成一個(gè)配置文件。
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
??但是有時(shí)候,在下載包的時(shí)候,會(huì)提示沒有信任的host,所以還要另外加上一個(gè)命令
pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn
??此時(shí)我的電腦提示,已經(jīng)在以下路徑生成了一個(gè)配置文件,
??Writing to C:\Users\我的電腦名稱\AppData\Roaming\pip\pip.ini
1.1.3 方法3:自定義配置文件
??我們可以在上述方法2的配置文件基礎(chǔ)上進(jìn)行修改,也可以在%HOMEPATH%\路徑下,也就是C:\Users\我的電腦名稱\這個(gè)路徑下面,新建一個(gè)pip文件夾,然后在pip文件夾下,創(chuàng)建一個(gè)pip.ini的文檔。
??這兩個(gè)位置的pip.ini配置文件都可以生效,如果同時(shí)存在的話,會(huì)優(yōu)先使用\AppData\Roaming文件夾下的配置文件。
??pip.ini的文件內(nèi)容如下:
??此時(shí)可以設(shè)置單獨(dú)的一個(gè)地址:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
??想把所有能用的都加上也可以:
??在我的實(shí)際體驗(yàn)來說,把這么多地址全加上,不一定更快,我的體驗(yàn)是反而比只加單個(gè)的慢,可能是網(wǎng)址太多了,每個(gè)都去查詢了一遍,反而速度慢了。
[global]
index-url = https://pypi.org/simple
extra-index-url=
https://pypi.tuna.tsinghua.edu.cn/simple
http://mirrors.aliyun.com/pypi/simple
http://pypi.douban.com/simple
https://pypi.mirrors.ustc.edu.cn/simple
https://mirrors.163.com/pypi/simple
https://repo.huaweicloud.com/repository/pypi/simple
https://mirrors.cloud.tencent.com/pypi/simple
[install]
trusted-host =
pypi.tuna.tsinghua.edu.cn
mirrors.aliyun.com
pypi.douban.com
pypi.mirrors.ustc.edu.cn
mirrors.163.com
repo.huaweicloud.com
mirrors.cloud.tencent.com
二、在線下載
2.1單個(gè)下載:
??正常情況下我們使用install命令就可以
pip install package_name
??哎,如果你想要指定版本呢,也可以設(shè)定。
pip install package_name == 版本號
??版本號管理有以下幾種格式:
-
== 指定版本號
-
=> 高于此版本號
-
<= 小于此版本號
-
< 小于此版本號
-
‘>’ 大于此版本號
2.2批量下載:
??有時(shí)候我們要下載很多個(gè)包,這個(gè)時(shí)候應(yīng)該怎么辦呢?我這里提供了四種辦法,可以讓你批量下載。
2.2.1方法1:命令行添加多個(gè)包
我們在命令行上,將幾個(gè)包之間用空格分開即可:
pip install package1 package2 package3
2.2.2方法2:使用freeze生成文件
??在pip中,有一個(gè)freeze命令,可以將電腦上的python第三方包統(tǒng)一導(dǎo)出,導(dǎo)出格式是:package==版本號,一般用txt來存儲(chǔ)和導(dǎo)入(txt文件的名稱可以自定義,不一定非要用requirements)。
# 將包信息導(dǎo)出為txt
pip freeze > requirements.txt
# 導(dǎo)入并安裝文件中有的包
pip install -r requirements.txt
2.2.3方法3:在代碼中下載
當(dāng)然了,我們還能用代碼批量下載,本質(zhì)就是用代碼來運(yùn)行cmd命令,不喜歡用命令行的朋友,寫代碼也是一樣的。
可以使用:pip.main()方法
import pip
pip.main(["install", "package1", "package2", "package3"])
也可以使用os.system()方法:
import os
os.system("pip install package1 package2 package3")
三、離線下載
??有時(shí)候你無法在線聯(lián)網(wǎng)下載第三方庫,一些內(nèi)網(wǎng)、實(shí)驗(yàn)室、敏感涉密的單位會(huì)有這樣的需求,所以可以先在其他設(shè)備上下載好第三方包,通過U盤或者其他方法,把文件放到我們的無網(wǎng)電腦上,然后通過pip在本地安裝。
3.1離線下載地址:
python離線庫地址:
??[熒光動(dòng)力學(xué)實(shí)驗(yàn)室(LFD)]
??https://www.lfd.uci.edu/~gohlke/pythonlibs/
??[python官方索引]
??https://pypi.org/
??當(dāng)然了,在前文中的國內(nèi)鏡像也可以下載,但是我通過網(wǎng)址進(jìn)入后,因?yàn)閮?nèi)容太多,網(wǎng)頁就卡死了,沒辦法檢索需要什么包。所以更推薦上面的兩個(gè)網(wǎng)址,可以進(jìn)去檢索后再下載。
3.2離線下載的包格式:
??進(jìn)入上面的pypi網(wǎng)址,檢索到需要的包后,進(jìn)入下載頁面,此時(shí)你會(huì)發(fā)現(xiàn),下載選項(xiàng)中有非常多的格式,這個(gè)時(shí)候你可能會(huì)頭暈眼花,不過不要慌,我研究以后發(fā)現(xiàn),格式其實(shí)分為三大類,
-
源包格式:.tar.gz,這個(gè)是所有平臺(tái)都能用的壓縮包,體積大。
-
構(gòu)建版本(一般是.whl格式,僅針對對應(yīng)的平臺(tái),體積?。?/p>
- win版本:
? ??????arm64:一般是平板或者手機(jī)的架構(gòu)
? ??????amd64:windows電腦的64位架構(gòu)
? ??????win32:windows電腦的32位架構(gòu)
- Linux版本
- macos版本
??下載的時(shí)候,記得下載依賴庫,例如某個(gè)庫A需要是依賴庫B才能運(yùn)行的,所以庫A和B都要下載。
??在查詢資料的時(shí)候,我以為amd64的架構(gòu)是amd的cpu才能用,結(jié)果發(fā)現(xiàn)并不是這樣,intel和amd的電電腦,都是使用的amd64架構(gòu),在使用pip inspect 命令檢查后,發(fā)現(xiàn)確實(shí)如此:platform_machine": “AMD64”,。
3.3離線安裝.tar.gz格式包
??1.首先將.tar.gz格式的文件解壓,這里我使用的解壓軟件是7z,一個(gè)開源的解壓軟件。你有解壓軟件的話也可以用其他的(比如好壓、winrar什么的),沒有的話推薦你使用這款解壓軟件,非常好用。
7z下載地址:https://www.7-zip.org/
??注意的是,這個(gè)包有好幾層,所以我是先打開這個(gè)包,然后一層一層的點(diǎn)進(jìn)去,然后把最后那層文件夾拖出來。如果直接解壓的話,是一個(gè)tar的壓縮包,需要再解壓一次。
??2我們進(jìn)入解壓好的文件夾,然后通過shift+鼠標(biāo)右鍵的方式,在右鍵菜單中找到:在此處打開power shell窗口的選項(xiàng),這樣我們進(jìn)入命令行頁面后,默認(rèn)就是當(dāng)前位置。
??(我看有些教程說要把解壓好的文件夾放到python-lib文件夾下,我嘗試的時(shí)候發(fā)現(xiàn)并不需要,隨便放哪兒都可以,只要你運(yùn)行命令行)
??此時(shí)輸入下面的命令運(yùn)行即可
pyhton setup.py install
??3然后就安裝成功了,可以通過pip list命令檢查是否安裝成功。
3.4離線安裝.whl格式包
3.4.1安裝單個(gè).whl包
??和上文一樣,我們通過shift+鼠標(biāo)右鍵的方式,進(jìn)入power shell窗口,然后就像正常的install一樣,輸入命令即可。
例如:
pip install xlrd-2.0.1-py2.py3-none-any.whl
這里需要注意的是:
- 包的名稱不要隨便改,雖然很長懶得打,但是你可以復(fù)制到命令行;包的名稱是有規(guī)則的,更改后破壞規(guī)則會(huì)無法安裝。
- 如果你是從其他入口進(jìn)去的,path使用絕對路徑也可以
??注意安裝順序:先安裝底層依賴庫
3.4.2批量安裝.whl包:
方法1:使用命令行安裝
??如果你在聯(lián)網(wǎng)設(shè)備上已經(jīng)有了成熟的環(huán)境,那么直接拷貝之前的環(huán)境即可。
# 使用freeze獲取當(dāng)前環(huán)境的包
pip freeze > requirements.txt
# 批量下載包,你可以指定一個(gè)文件夾下載txt中有的包
pip download -d 下載文件夾 -r requirements.txt
# 批量安裝包,你可以通過以下代碼安裝本地資源
pip install --no-index --find-links=下載文件夾 -r requirements.txt
方法2:使用代碼安裝
??當(dāng)然,你可也可以使用代碼,和第二章:線上下載章節(jié)中提到的一樣,核心也是通過代碼來運(yùn)行命令行語句。
??因?yàn)槭潜镜匕惭b,涉及到了本地文件地址,pip的方法就不太合適了,這里使用了os庫。
??引用os庫進(jìn)行安裝:
import os
# 你的下載包文件夾地址
whl_dir = "C:\\Users\test\Downloads\source"
# 使用循環(huán)執(zhí)行安裝命令
for file_name in os.listdir(whl_dir):
file_path = os.path.join(whl_dir, file_name)
os.system("pip install %s" % file_path)
四、所有pip命令的總結(jié)
??在上面的部分,我使用了很多的命令行,你可能會(huì)有疑問,這些指令和格式都是從哪里知道的呢?不看別人寫的文章,還有什么渠道能查到呢?其實(shí)在pip的包里,就有各種命令的文檔,我們可以自己研究。
??在命令行中僅輸入pip然后回車,就能看到pip的基礎(chǔ)使用文檔,在這章中,我會(huì)給出中文釋義,以及我使用這些命令的一些示例。
??對應(yīng)的每個(gè)command命令,其實(shí)也有自己的一些方法和選項(xiàng),例如我想知道search命令怎么使用,可以在命令行輸入:
pip help search
或者
pip search -h
??這樣pip會(huì)列出來search的使用文檔,具體的用法一看便知。
4.1 pip命令的格式
??我們在命令行頁面,直接輸入pip并且回車,會(huì)給出一大堆提示消息這是關(guān)于如何使用pip命令的指南,現(xiàn)在我來一一使用并列出對應(yīng)的例子。
??用法格式:
pip <command> [options]
# 解釋 pip 命令關(guān)鍵字 選項(xiàng)關(guān)鍵字
# 例如 pip list --format json (意思是:列出安裝的第三方包,格式為json)
4.2 command命令詳解。
commands命令 | 釋義解釋 | 示例(舉例ddt庫) |
---|---|---|
install | 安裝包 | pip install ddt(安裝ddt) |
download | 下載包 | pip download ddt(下載ddt) |
uninstall | 卸載包 | pip uninstall ddt(卸載ddt) |
freeze | 將本地已經(jīng)安裝的第三方包列表,輸出requirements格式 | pip freeze > test.txt (將本地包信息輸出到test.txt文件中) |
inspect | 檢查python環(huán)境 | pip inspect(檢查環(huán)境) |
list | 列出所有安裝的python的第三方庫 | pip list(列出所有第三方庫) |
show | 顯示某個(gè)包的信息 | pip show ddt(展示ddt包的信息) |
check | 檢查某個(gè)安裝包是否有依賴項(xiàng) | pip check ddt(檢查ddt是否有依賴包) |
config | 管理本地和全局的配置 | pip config list(查看配置項(xiàng)) |
search | 從PyPI 搜索包 | pip search ddt(搜索ddt包) |
cache | 檢查和管理pip的緩存 | pip cache info(查看緩存信息) |
index | 檢查包索引中的可用信息 | pip index versions ddt(查看ddt包的歷史版本) |
wheel | 根據(jù)需要構(gòu)建wheels(跟download很像,具體區(qū)別我也不清楚) | pip wheel ddt(下載ddt) |
hash | 計(jì)算某個(gè)包的哈希值 | pip hash C:\Users\package\ddt.whl(計(jì)算ddt文件的哈希值) |
completion | 用于完成命令的輔助命令。 | pip completion list --powershell(輸出命令對應(yīng)的代碼) |
debug | 顯示對調(diào)試有用的信息。 | pip debug list(輸出list命令的debug信息) |
help | 顯示命令的幫助信息 | pip help list(顯示list命令的用法) |
4.3 General Options:通用選項(xiàng)詳解
General Options通用選項(xiàng) | 中文釋義 |
---|---|
-h, --help | 展示幫助項(xiàng) |
–debug | 讓未處理的異常在主子程序之外傳播,而不是記錄它們到stderr |
–isolated | 在隔離模式下運(yùn)行pip,忽略環(huán)境變量和用戶配置。 |
–require-virtualenv | 允許pip只在虛擬環(huán)境中運(yùn)行;否則將退出并返回錯(cuò)誤。 |
–python | 使用指定的Python解釋器運(yùn)行pip |
-v, --verbose | 提供更多輸出。選項(xiàng)是可添加的,最多可使用3次。 |
-V, --version | 顯示版本 |
-q, --quiet | 輸出更少。選項(xiàng)是可添加的,最多可使用3次(對應(yīng)于WARNING、ERROR和CRITICAL日志記錄級別)。 |
–log
|
日志,并且定義路徑 |
–no-input | 禁用輸入提示 |
–keyring-provider <keyring_provider> | 如果允許用戶輸入,則通過密鑰環(huán)庫啟用憑據(jù)查找。指定要使用的機(jī)制[disabled,import,subprocess]。(默認(rèn)設(shè)置:禁用) |
–proxy | 以scheme://[user:passwd@]proxy.server:port的形式指定代理 |
–retries | 每個(gè)連接應(yīng)嘗試的最大重試次數(shù)(默認(rèn)為5次) |
–timeout | 設(shè)置連接超時(shí)長(默認(rèn)為15秒) |
–exists-action | 路徑已存在時(shí)的默認(rèn)操作:(s)witch(i)gnore(w)ipe(b)ackup(a)bort |
–trusted-host | 將此主機(jī)或host:port對標(biāo)記為受信任,即使它沒有有效的HTTPS或任何HTTPS |
–cert
|
PEM編碼的CA證書捆綁包的路徑。如果提供,則覆蓋默認(rèn)值。請參閱“SSL”有關(guān)詳細(xì)信息,請參閱pip文檔中的“證書驗(yàn)證”。 |
–client-cert
|
SSL客戶端證書的路徑,一個(gè)包含私鑰和PEM格式的證書。 |
–cache-dir
|
將緩存數(shù)據(jù)存儲(chǔ)在
|
–no-cache-dir | 禁用緩存 |
–disable-pip-version-check | 不要定期檢查PyPI來確定是否有新版本的pip可供下載 |
–no-color | 不用彩色輸出 |
–no-python-version-warning | python不被支持時(shí),發(fā)出警告 |
–use-feature | 啟用可能向后不兼容的新功能。 |
–use-deprecated | 啟用不推薦使用的功能,這些功能將來將被刪除。 |
五、文檔資料
-
python官方文檔https://docs.python.org/zh-cn/3/contents.html
-
python中文指南:https://python.iswbm.com/index.html
-
菜鳥pythonhttps://www.runoob.com/python3/
-
w3chttps://www.w3cschool.cn/python3/文章來源:http://www.zghlxwxcb.cn/news/detail-426552.html
-
官方pip文檔https://packaging.python.org/en/latest/tutorials/installing-packages/文章來源地址http://www.zghlxwxcb.cn/news/detail-426552.html
到了這里,關(guān)于python安裝三方庫教程:關(guān)于pip命令的一切,到底怎么用?的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!