Python学习之pip包管理工具的使用
作者:梦想橡皮擦 时间:2023-07-24 11:01:57
写文的原因
学习 Python 的过程中,经常会使用 pip 命令去安装第三方模块,但细细琢磨下来,我真的掌握这款工具了吗?
本文为你全面揭示一下 pip 包管理工具的使用!
pip 简介
pip 是 Python 默认集成的包管理工具,而其本质就是 Python 标准库中的一个包,只是比较特殊一些,可以管理其它包,从 Python2.7 开始,Python 安装包中默认装载了 pip
,而且如果使用虚拟环境,即使用 virtualenv
或 pyvenv
,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 功能将被无限期封掉了,所以忽略吧。
来源:https://juejin.cn/post/7128028874788569124