首頁 > 軟體

Python學習之pip包管理工具的使用

2022-08-05 14:01:56

寫文的原因

學習 Python 的過程中,經常會使用 pip 命令去安裝第三方模組,但細細琢磨下來,我真的掌握這款工具了嗎?

本文為你全面揭示一下 pip 包管理工具的使用!

pip 簡介

pip 是 Python 預設整合的包管理工具,而其本質就是 Python 標準庫中的一個包,只是比較特殊一些,可以管理其它包,從 Python2.7 開始,Python 安裝包中預設裝載了 pip,而且如果使用虛擬環境,即使用 virtualenvpyvenv,pip 也會預設同步到環境中。

如果安裝 Python 環境之後,發現 pip 不存在,也可以選擇 get-pip.py 進行重安裝。

pip 具備以下優點:

  • 提供了安裝,展示等細緻功能;
  • 完美支援虛擬環境;
  • 可以通過 requirements.txt 批次管理包;
  • 可以處理二進位制格式檔案,特指 .whl,順便推薦以下常用的 .whl 包下載地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/
  • 攜帶回滾功能,安裝失敗會自動清理相關包。

pip 安裝/移除包

直接在命令列輸入 pip,即可喚醒相應說明,其語法格式為 pip <command> <options>pip 關鍵字 命令 引數

使用 pip -V 可以直接檢視當前版本。

C:UsersAdmin>pip -V
pip 20.2.3 from c:usersadminappdatalocalprogramspythonpython38libsite-packagespip (python 3.8)

如果希望升級 pip 本身,直接使用 pip install --upgrade pip 即可。

首先要學習的兩個命令,也是最常用的命令,如下所示:

pip install xxx
pip uninstall xxx

安裝包和移除包,在使用的時候,如果希望出現幫助檔案,可以直接輸入 pip install 然後回車,提示如下內容:

ERROR: You must give at least one requirement to install (see "pip help install")
WARNING: You are using pip version 20.2.3; however, version 22.2.2 is available.
You should consider upgrading via the 'c:usersadminappdatalocalprogramspythonpython38python.exe -m pip install --upgrade pip' command.

然後遵循其提示,輸入 pip help install,可以得到命令使用說明,其內容非常多,不過最常用的依舊是 pip install 包名 或者 pip install -r requirements.txt,二者都是對第三方包進行安裝。 安裝包的同時,還可以對包版本進行控制,命令如下:

# 最新版本
pip install package
# 指定版本
pip install package==1.0.4
# 最小版本
pip install 'package>=1.0.4'

移除已安裝包,使用 pip uninstall 包名 命令,相應的也可以使用 pip uninstall -r requirements.txt 批次移除包。

升級包和檢視已安裝包

對已安裝包進行升級,使用的命令如下所示:

pip install -U 包名
pip install 包名 --upgrade

不過在實戰中升級包應用最廣泛的是移除包之後,在安裝新版本包。

檢視已安裝包清單,使用 pip list 命令。

使用 pip list -o 命令,可以檢視可升級的包,展示如下:

C:UsersAdmin>pip list -o -i https://pypi.tuna.tsinghua.edu.cn/simple
Package     Version Latest Type
----------- ------- ------ -----
pycodestyle 2.8.0   2.9.1  wheel
setuptools  49.2.1  63.4.1 wheel

如果希望檢視某安裝包的詳細資訊,可以使用 pip show 包名 進行查閱,例如檢視 requests 詳細資訊。

C:UsersAdmin>pip show requests
Name: requests
Version: 2.28.1
Summary: Python HTTP for Humans.
Home-page: https://requests.readthedocs.io
Author: Kenneth Reitz
Author-email: me@kennethreitz.org
License: Apache 2.0
Location: c:usersadminappdatalocalprogramspythonpython38libsite-packages
Requires: charset-normalizer, certifi, urllib3, idna
Required-by:

如果想要檢視所有安裝包的版本資訊,可以使用 pip freeze 命令。

C:UsersAdmin>pip freeze
autopep8==1.6.0
certifi==2022.6.15
charset-normalizer==2.1.0
idna==3.3
pycodestyle==2.8.0
requests==2.28.1
toml==0.10.2
urllib3==1.26.11

該命令還可以將模組包及對應的版本號輸出到檔案中。

pip freeze > requirements.txt

搜尋包

pip search 包名 已經不能使用了,官方將 PyPI 的 search 功能將被無限期封掉了,所以忽略吧。

到此這篇關於Python學習之pip包管理工具的使用的文章就介紹到這了,更多相關Python pip包管理工具內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com