python包管理工具pip全面解析
一、什么是 pypi
The Python Package Index 是 python 軟件包的存儲(chǔ)庫(kù)。在這里可以找到社區(qū)中你需要的 python 軟件包。
pipy 中有 50+ 多萬(wàn)個(gè)項(xiàng)目,500+ 萬(wàn)加的釋放,以及 76+ 萬(wàn)的用戶。python 生態(tài)龐大,值得擁抱。
二、什么是 pip
The Python Package Installer python 的包管理工具
三、資源
四、自帶 pip 的 python
注意:Python 2.7.9 + 或 Python 3.4+ 以上版本都自帶 pip 工具。
五、安裝 pip
如果你還沒有 pip 可以安裝,帶有 pip 的 python 版本。
py -m ensurepip --upgrade
ensurepip 確認(rèn)模塊- 使用 get-pip 引導(dǎo)安裝
六、pip 命令詳解
pip --help 獲取所有 pip 命令提示
- 升級(jí)pip:
pip install -U pip
- 安裝
pip install pkg # 最新版本 pip install pkg==1.0.4 # 指定版本 pip install 'pkg>=1.0.4' # 最小版本 pip install tmuxp # 安裝 tmuxp 示例
- 升級(jí)包
:pip install --upgrade pkg
- 搜索包:
pip search pkg
- 顯示包信息:
pip show/pip show -f pkg
- 顯示所有已經(jīng)安裝的包:
pip list
(pip list -o
可升級(jí))
七、pip 鏡像站
八、requirements.txt 記錄python包管理工具
8.1)什么是 requirements.txt
requirements.txt 是 python 在不同的環(huán)境中對(duì)依賴包的一種約定,用于列出 Python 項(xiàng)目中所有的依賴包以及對(duì)應(yīng)版本號(hào)的文本文件。一般在項(xiàng)目的在工程目錄下。
8.2)requirements.txt 格式
pkg==version 等于版本 pkg>version 大于版本 pkg<version 小于版本 pkg>=version 大于等于版本 pkg<=version 小于等于版本 pkg~=version 大于版本 pkg >= 1.0, <=2.0 容版本,使用任何大于或等于指定版本,但不大于當(dāng)前發(fā)行系列的版本,
8.3)一個(gè)簡(jiǎn)單的示例
touch requirements.txt # 輸入 requests==2.26.0 numpy>=1.21.4 pandas<=1.3.5
8.4)pip 安裝 requirements.txt 中的包
pip install -r requirements.txt
8.5)更新 requirements.txt 中的包
pip freeze > requirements.txt
九、python 中常用包推薦
領(lǐng)域 | 庫(kù)名稱 | 描述 |
---|---|---|
數(shù)據(jù)處理與科學(xué)計(jì)算 | NumPy | 用于數(shù)值計(jì)算,提供高效的多維數(shù)組對(duì)象和操作。 |
Pandas | 用于數(shù)據(jù)處理和分析,提供了數(shù)據(jù)結(jié)構(gòu)和工具。 | |
SciPy | 提供了許多科學(xué)計(jì)算的工具包,包括數(shù)值積分、優(yōu)化、信號(hào)處理等。 | |
matplotlib | 用于繪制圖表和數(shù)據(jù)可視化。 | |
機(jī)器學(xué)習(xí)與人工智能 | Scikit-learn | 提供了各種機(jī)器學(xué)習(xí)算法和工具。 |
TensorFlow 或 PyTorch | 用于深度學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)。 | |
Keras | 用于構(gòu)建和訓(xùn)練神經(jīng)網(wǎng)絡(luò)的高級(jí) API。 | |
Web 開發(fā) | Flask 或 Django | Web 應(yīng)用程序框架,用于構(gòu)建 Web 應(yīng)用。 |
requests | 用于 HTTP 請(qǐng)求和訪問 Web 數(shù)據(jù)。 | |
自然語(yǔ)言處理 | NLTK | 用于自然語(yǔ)言處理的庫(kù),包含了豐富的語(yǔ)料庫(kù)和算法。 |
spaCy | 提供了高效的自然語(yǔ)言處理工具。 | |
測(cè)試 | unittest | Python 內(nèi)置的單元測(cè)試框架。 |
pytest | 簡(jiǎn)化測(cè)試的庫(kù),支持更多的測(cè)試特性。 | |
圖像處理 | Pillow | 用于圖像處理的庫(kù),支持圖像格式的處理和基本圖像操作。 |
數(shù)據(jù)庫(kù) | SQLAlchemy | 用于數(shù)據(jù)庫(kù)操作的庫(kù),提供了高層的 SQL 工具。 |
pymongo | 用于 MongoDB 數(shù)據(jù)庫(kù)的 Python 客戶端庫(kù)。 | |
加密與安全 | cryptography | 提供了加密工具和算法。 |
請(qǐng)求相關(guān) | Requests | 簡(jiǎn)單易用的 HTTP 請(qǐng)求庫(kù),用于發(fā)送各種類型的 HTTP 請(qǐng)求。 |
HTML 解析相關(guān) | Beautiful Soup | 用于解析 HTML 和 XML 文檔,功能強(qiáng)大且靈活。 |
游戲開發(fā) | Pygame | 用于創(chuàng)建 2D 游戲的庫(kù),提供了圖形、聲音和輸入的支持。 |
Pyglet | 用于開發(fā)游戲和多媒體應(yīng)用程序的庫(kù),支持 OpenGL。 | |
Ren'Py | 用于創(chuàng)建視覺小說和交互式故事的框架。 | |
Arcade | 適用于初學(xué)者的 2D 游戲開發(fā)庫(kù),旨在簡(jiǎn)化游戲開發(fā)過程。 | |
PyOpenGL | Python 的 OpenGL 實(shí)現(xiàn),允許直接訪問 OpenGL API。 |
十、小結(jié)
本文主要關(guān)注 pip 包管理工具以及使用方法,pip 已經(jīng)在內(nèi)置到了新版的 python 中,使用 pip 可方便的管理 python 的第三方依賴。同時(shí) pip 可以通過 requirements.txt 來配置當(dāng)前項(xiàng)目的依賴以及版本,可以很好的管理自不同環(huán)境中包的依賴問題,最后推薦了一些 python 生態(tài)中常用的包,希望能夠幫助到你。
以上就是全面解析 python 包管理工具 pip的詳細(xì)內(nèi)容,更多關(guān)于python 包管理工具 pip的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python+Opencv實(shí)現(xiàn)數(shù)字識(shí)別的示例代碼
這篇文章主要介紹了Python+Opencv實(shí)現(xiàn)數(shù)字識(shí)別的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03python判斷列表的連續(xù)數(shù)字范圍并分塊的方法
今天小編就為大家分享一篇python判斷列表的連續(xù)數(shù)字范圍并分塊的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-11-11利用Python實(shí)現(xiàn)自動(dòng)化監(jiān)控文件夾完成服務(wù)部署
本篇文章將為大家詳細(xì)介紹如何利用Python語(yǔ)言實(shí)現(xiàn)監(jiān)控文件夾,以此輔助完成服務(wù)的部署動(dòng)作,文中的示例代碼講解詳細(xì),感興趣的可以嘗試一下2022-07-07python列表排序用?sort()和sorted()的區(qū)別
這篇文章主要介紹了python列表排序用?sort()和sorted()的區(qū)別,主要比較?Python?中用于列表排序的兩種函數(shù)?sort()?和?sorted(),選擇合適的排序函數(shù),下文詳細(xì)內(nèi)容需要的小伙伴可以參考一下2022-03-03Python使用Virtualenv進(jìn)行虛擬環(huán)境管理的詳細(xì)步驟
Virtualenv是一個(gè)Python環(huán)境管理工具,它允許開發(fā)者在不同的項(xiàng)目之間獨(dú)立創(chuàng)建和管理各自的Python環(huán)境,通過virtualenv,你可以為每個(gè)項(xiàng)目安裝特定版本的Python解釋器以及項(xiàng)目的依賴庫(kù),本文給大家介紹了Python使用Virtualenv進(jìn)行虛擬環(huán)境管理的詳細(xì)步驟2024-09-09解讀Opencv中Filter2D函數(shù)的補(bǔ)全方式
這篇文章主要介紹了解讀Opencv中Filter2D函數(shù)的補(bǔ)全方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-12-12