從安裝到精通詳解Python包管理神器pip完全指南(小白友好版)
還在為安裝Python第三方庫(kù)發(fā)愁嗎?一篇文章帶你徹底搞懂pip!
寫在前面
你可能經(jīng)常看到這樣的命令:pip install xxx,然后就能神奇地使用各種強(qiáng)大的庫(kù)了。但是,pip到底是什么?它從哪里下載文件?為什么有時(shí)候安裝很慢?怎么安裝指定版本?今天這篇文章,我將用最通俗易懂的方式,帶你從零開始掌握pip的使用。全文干貨,建議收藏!

1. 什么是pip?什么是PyPI?
1.1 專業(yè)解釋
- pip 是Python官方的包管理工具,全稱“Pip Installs Packages”。它負(fù)責(zé)安裝、卸載、升級(jí)Python第三方包。
- PyPI(Python Package Index) 是Python官方的軟件倉(cāng)庫(kù),網(wǎng)址是 https://pypi.org,里面存放了超過(guò)30萬(wàn)個(gè)第三方包,就像Python的“應(yīng)用商店”。
1.2 大白話 + 生活案例
你可以把PyPI想象成一個(gè)巨大的手機(jī)應(yīng)用商店(比如App Store或華為應(yīng)用市場(chǎng)),里面有無(wú)數(shù)的“Python小應(yīng)用”(也就是包,例如網(wǎng)絡(luò)請(qǐng)求庫(kù)requests、數(shù)據(jù)分析庫(kù)pandas)。而pip就是應(yīng)用商店的下載器——你只需要告訴pip你想裝什么,它就會(huì)自動(dòng)去商店里找到那個(gè)應(yīng)用,下載并安裝到你的Python環(huán)境中。
生活案例:你想在手機(jī)上裝一個(gè)“微信”,你會(huì)打開應(yīng)用商店,搜索“微信”,點(diǎn)擊安裝。pip的工作流程一模一樣:你輸入pip install requests,pip就去PyPI搜索“requests”包,然后下載安裝。
2. 安裝Python和pip
2.1 檢查是否已安裝Python
打開終端(Windows是cmd或PowerShell,Mac是終端),輸入:
python --version
如果顯示類似Python 3.9.7,說(shuō)明已安裝Python。如果沒(méi)有,請(qǐng)先到 Python官網(wǎng) 下載安裝包。
2.2 檢查pip是否已安裝
Python 3.4以上版本默認(rèn)自帶pip。在終端輸入:
pip --version
如果顯示pip版本號(hào),說(shuō)明pip已安裝。如果沒(méi)有,可以嘗試:
python -m ensurepip --upgrade
或者重新安裝Python(安裝時(shí)勾選“Add Python to PATH”和“Install pip”)。
3. pip的基本使用(必會(huì)?。?/h2>
3.1 安裝包
最常用的命令:pip install 包名
pip install requests
這將會(huì)安裝最新版本的requests庫(kù)。
3.2 卸載包
pip uninstall 包名
例如卸載requests:
pip uninstall requests
3.3 查看已安裝的包
pip list
會(huì)列出當(dāng)前環(huán)境中所有已安裝的包及其版本。
3.4 查看某個(gè)包的詳細(xì)信息
pip show 包名
例如查看requests的詳細(xì)信息:
pip show requests
會(huì)顯示版本、作者、依賴等信息。
3.5 升級(jí)包
pip install --upgrade 包名
例如升級(jí)pip本身:
pip install --upgrade pip
4. pip的高級(jí)用法(進(jìn)階必備)
4.1 安裝指定版本
有時(shí)候項(xiàng)目需要特定版本的包,比如Django 2.2(因?yàn)?.x有重大變化):
pip install django==2.2
也可以使用不等號(hào):
pip install "django>=2.2,<3.0"
4.2 使用 requirements.txt 批量安裝
當(dāng)你從GitHub下載一個(gè)Python項(xiàng)目,通常會(huì)有一個(gè)requirements.txt文件,里面列出了項(xiàng)目所需的所有包及其版本。一鍵安裝:
pip install -r requirements.txt
生成當(dāng)前環(huán)境的requirements.txt:
pip freeze > requirements.txt
4.3 更換鏡像源(解決下載慢問(wèn)題)
默認(rèn)的PyPI服務(wù)器在國(guó)外,國(guó)內(nèi)下載可能很慢。可以使用國(guó)內(nèi)鏡像源,比如清華源、阿里源、中科大源等。
臨時(shí)使用:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名
永久配置(Windows):在用戶目錄下創(chuàng)建pip文件夾,再創(chuàng)建pip.ini文件(例如C:\Users\你的用戶名\pip\pip.ini),寫入:
[global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple [install] trusted-host = pypi.tuna.tsinghua.edu.cn
Mac/Linux:在用戶目錄下創(chuàng)建.pip/pip.conf文件,內(nèi)容同上。
4.4 安裝本地whl文件
有時(shí)候網(wǎng)絡(luò)不好,可以提前下載好whl文件(比如從PyPI官網(wǎng)或鏡像站手動(dòng)下載),然后本地安裝:
pip install 包名.whl
4.5 虛擬環(huán)境的使用(強(qiáng)烈推薦)
不同項(xiàng)目可能依賴不同版本的包,為了避免沖突,可以為每個(gè)項(xiàng)目創(chuàng)建獨(dú)立的虛擬環(huán)境。
創(chuàng)建虛擬環(huán)境(Python 3.3+內(nèi)置venv):
python -m venv myenv
激活虛擬環(huán)境:
- Windows:
myenv\Scripts\activate - Mac/Linux:
source myenv/bin/activate
激活后,終端前面會(huì)出現(xiàn)(myenv),表示現(xiàn)在在虛擬環(huán)境中。然后就可以用pip安裝包,這些包只在這個(gè)環(huán)境下有效。
退出虛擬環(huán)境:
deactivate
5. 常見問(wèn)題與解決方案
5.1 下載速度慢
- 原因:默認(rèn)源在國(guó)外。
- 解決:使用國(guó)內(nèi)鏡像源,見4.3節(jié)。
5.2 權(quán)限不足錯(cuò)誤(Permission denied)
- 原因:在系統(tǒng)級(jí)Python環(huán)境中安裝包需要管理員權(quán)限。
- 解決:
- Windows:以管理員身份運(yùn)行cmd。
- Mac/Linux:命令前加
sudo,如sudo pip install 包名(不推薦長(zhǎng)期使用,建議用虛擬環(huán)境)。
5.3 依賴沖突
- 原因:包A依賴包C的1.x版本,包B依賴包C的2.x版本,導(dǎo)致沖突。
- 解決:使用虛擬環(huán)境隔離不同項(xiàng)目;或者用
pip install 包名==版本號(hào)指定兼容版本。
5.4 找不到合適的版本
- 可能原因:包名拼寫錯(cuò)誤;或者你使用的Python版本與該包不兼容(例如有些包只支持Python 3.8+)。
- 解決:檢查包名和Python版本。
5.5 pip版本過(guò)舊
- 現(xiàn)象:安裝時(shí)提示
You are using pip version xx, however version yy is available. - 解決:升級(jí)pip:
pip install --upgrade pip
6. 實(shí)戰(zhàn)案例:安裝requests并寫一個(gè)簡(jiǎn)單爬蟲
讓我們通過(guò)一個(gè)小例子,把學(xué)到的知識(shí)用起來(lái)。
6.1 安裝requests
pip install requests
如果慢,可以用清華源:
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests
6.2 編寫Python腳本
新建一個(gè)文件test.py,寫入以下代碼:
import requests
url = "https://www.baidu.com"
response = requests.get(url)
print(f"狀態(tài)碼:{response.status_code}")
print(f"網(wǎng)頁(yè)內(nèi)容長(zhǎng)度:{len(response.text)}")6.3 運(yùn)行腳本
python test.py
如果輸出類似:
狀態(tài)碼:200
網(wǎng)頁(yè)內(nèi)容長(zhǎng)度:2443
說(shuō)明安裝成功,并且能正常使用requests庫(kù)了!
7. 總結(jié)
通過(guò)本文,你應(yīng)該已經(jīng)掌握了:
- pip是什么,為什么用它
- 如何安裝pip
- pip的基本命令(安裝、卸載、查看、升級(jí))
- pip的高級(jí)用法(指定版本、requirements.txt、鏡像源、虛擬環(huán)境)
- 常見問(wèn)題的解決方法
- 一個(gè)簡(jiǎn)單的實(shí)戰(zhàn)案例
pip是Python生態(tài)中不可或缺的工具,用好它能讓你事半功倍。隨著你的Python之路深入,還會(huì)接觸到conda、poetry等更高級(jí)的工具,但pip永遠(yuǎn)是基礎(chǔ)。
以上就是從安裝到精通詳解Python包管理神器pip完全指南(小白友好版)的詳細(xì)內(nèi)容,更多關(guān)于Python pip包管理的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
分析PyTorch?Dataloader報(bào)錯(cuò)ValueError:num_samples的另一種可能原因
這篇文章主要介紹了分析PyTorch?Dataloader報(bào)錯(cuò)ValueError:num_samples的另一種可能原因,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
python讀取測(cè)試數(shù)據(jù)的多種方式
本文主要介紹了python讀取測(cè)試數(shù)據(jù)的多種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
Python 字節(jié)流,字符串,十六進(jìn)制相互轉(zhuǎn)換實(shí)例(binascii,bytes)
這篇文章主要介紹了Python 字節(jié)流,字符串,十六進(jìn)制相互轉(zhuǎn)換實(shí)例(binascii,bytes),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05
python實(shí)現(xiàn)簡(jiǎn)易淘寶購(gòu)物
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡(jiǎn)易淘寶購(gòu)物,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11
Python通過(guò)pyperclip庫(kù)操作剪貼板
pyperclip是一個(gè)python庫(kù)用于操作剪貼板,可以非常方便地將文本復(fù)制到剪貼板或從剪貼板獲取文本,下面就跟隨小編一起了解一下pyperclip的具體使用吧2024-11-11

