都 2022 年了,你真的会用 Python 的 pip 吗?

Posted 梦想橡皮擦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了都 2022 年了,你真的会用 Python 的 pip 吗?相关的知识,希望对你有一定的参考价值。

@[toc]

⛳️ 写文的原因

学习 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:\\Users\\Admin>pip -V
pip 20.2.3 from c:\\users\\admin\\appdata\\local\\programs\\python\\python38\\lib\\site-packages\\pip (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:\\users\\admin\\appdata\\local\\programs\\python\\python38\\python.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:\\Users\\Admin>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:\\Users\\Admin>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:\\users\\admin\\appdata\\local\\programs\\python\\python38\\lib\\site-packages
Requires: charset-normalizer, certifi, urllib3, idna
Required-by:

如果想要查看所有安装包的版本信息,可以使用 pip freeze 命令。

C:\\Users\\Admin>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 功能将被无限期封掉了,所以忽略吧。

以上是关于都 2022 年了,你真的会用 Python 的 pip 吗?的主要内容,如果未能解决你的问题,请参考以下文章

都 2022 年了,你真的会用 Python 的 pip 吗?

都2022年了,Python Web框架你不会只知道Django和Flask吧?

爬虫框架可能都会用,但是背后的架构你真的懂了吗?

都2022年了,Python Web框架你不会只知道Django和Flask吧?

都2022年了,Python Web框架你不会只知道Django和Flask吧?

开发工具 | 你真的会用jupyter吗?