龙空技术网

一日一技:说说python中的 pip安装工具

Python编程之美 154

前言:

当前大家对“python2的pip”大体比较讲究,各位老铁们都想要剖析一些“python2的pip”的相关内容。那么小编在网摘上搜集了一些关于“python2的pip””的相关资讯,希望看官们能喜欢,咱们快快来了解一下吧!

pip

pip是Python的标准软件包管理器,

我们可以使用pip安装Python标准库中没有的三方软件包。

比如我们用pip安装科学计算包numpy,如下:

pip install numpy

如果在你的电脑中安装了pip,则上面的命令将会下载安装numpy库。

那么如何安装pip呢?

pip预先安装在Python 3.4或更早版本上。 我们可以通过在控制台中使用以下命令来检查是否安装了pip:

pip --version

如果你的电脑中已经安装好了pip,则会显示相应的pip版本,如下图所示:

pip --version

pip 20.1.1 from c:\program files\python37-32\lib\site-packages\pip (python 3.7)

使用pip

pip是一个命令行程序。 安装后,将添加一个pip命令,该命令可与命令提示符一起使用。

pip的基本语法为:

pip <pip arguments>

用pip安装软件包

除了标准的Python库之外,Python社区人员贡献了很多其他的第三方库,

这些软件包中的大多数都已正式托管并发布到Python软件包索引(PyPI)。

pip允许我们下载并安装这些软件包,如下图所示:

pypi

基本软件包安装

install命令用于使用pip安装软件包。 让我们举个例子:

假设我们要安装requests三方库,这是一个Python 的HTTP请求库。

我们使用pip命令来安装,如下:

pip install requests

输出信息:

Collecting requests  Using cached  chardet<3.1.0,>=3.0.2  Using cached  urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1  Using cached  idna<2.9,>=2.5  Using cached  certifi>=2017.4.17  Downloading  (156kB)Installing collected packages: chardet, urllib3, idna, certifi, requestsSuccessfully installed certifi-2019.11.28 chardet-3.0.4 idna-2.8 requests-2.22.0 urllib3-1.25.7

在这里,我们可以看到pip与install命令一起使用,后面跟着我们要安装的软件包的名称requests。

pip还安装了此软件包所需的所有其他依赖包,例如chardet,urllib3和certifi。

安装指定软件包版本

如果以默认形式使用pip install安装三方包,则pip将下载软件包的最新版本。

不过,有时候我们仅需要特定版本与其他程序兼容。

所以,我们可以通过以下方式安装软件包的指定版本,比如:

pip install requests==2.21.0

在上面,我们指定安装的requests库是2.11.0版本。

用pip工具列出已安装的软件包

pip list命令可用于列出当前Python环境中的所有可用软件包,使用如下命令:

pip  list

输出信息:

pip list

使用pip show命令显示包信息

使用pip show命令显示一个或多个已安装软件包的信息,比如:

pip show requests

输出信息:

Name: requestsVersion: 2.22.0Summary: Python HTTP for Humans.Home-page: : Kenneth ReitzAuthor-email: me@kennethreitz.orgLicense: Apache 2.0Location: c:\users\dell\desktop\venv\lib\site-packagesRequires: certifi, chardet, urllib3, idnaRequired-by:

在上面的输出信息中,show命令显示有关请求库的信息。

注意下方最后两行输出的Requires和Required-by。

Requires显示请求库需要哪些依赖项。

Required-by显示了需要请求的软件包。

用pip卸载软件包

既然可以使用pip安装包,那么我们也可以通过pip卸载安装包。

使用命令pip uninstall命令一起使用来卸载软件包,比如:

pip uninstall requests

输出信息:

Uninstalling requests-2.22.0:  Would remove:    C:\Python37\lib\site-packages\requests-2.22.0.dist-info\*    C:\Python37\lib\site-packages\requests\*Proceed (y/n)? y  Successfully uninstalled requests-2.22.0

在上面我们可以看到,在最后的提示中,输入y,请求包被卸载。

不过请注意:虽然指定的软件包被卸载,但是作为依赖安装的软件包不会被卸载。

在这种情况下,不会卸载请求库的依赖项(比如chardet,urllib3和certifi)。

如果你要卸载程序包的依赖项,那么可以使用pip show命令查看已安装的程序包并手动卸载它们。

批量安装包

包含所有软件包名称的文件也可以用于批量安装Python软件包。

让我们看一个例子:

假设我们有一个文件requirements.txt,其中包含以下三方库:

numpyPillowpygame

那么,我们可以通过在pip中使用单个命令来安装所有这些软件包及其依赖项,如下:

pip install -r requirements.txt

输出信息:

Collecting numpy  Using cached  Pillow  Using cached  pygame  Using cached  collected packages: numpy, Pillow, pygameSuccessfully installed Pillow-7.0.0 numpy-1.18.1 pygame-1.9.6

在上面,我们对pip使用了相同的安装命令。

但是,附加参数-r指定了pip,也就是说,我们传递需求文件安装包,而不是软件包名称。

创建requirements.txt文件

作为手动创建requirements.txt文件的替代方法,pip提供了freeze命令。

让我们看看如何使用这个命令,假设我们当前的Python环境具有以下软件包。

那么我们可以使用pip list显示。

Package    Version---------- -------numpy      1.17.0Pillow     6.1.0pip        19.3.1pygame     1.9.6setuptools 45.0.0wheel      0.33.6

使用freeze命令列出未预装Python的软件包。

pip freeze

输出:

numpy==1.17.0Pillow==6.1.0pygame==1.9.6

pip freeze命令以需求文件的格式显示软件包及其版本。

因此,我们可以使用以下命令将该输出重定向以创建需求文件:

pip freeze > requirements.txt

在工作目录中新建一个requirements.txt文件。 以后我们就可以在其他Python环境中使用它来安装特定版本的软件包,很方便。

在pip中搜索软件包

search命令用于在命令提示符下搜索软件包。 让我们看一个例子:

pip search pygame

输出:

pygame-anisprite (1.0.0)               - Animated sprites for PyGame!pygame-ai (0.1.2)                      - Videogame AI package for PyGamepygame-engine (0.0.6)                  - Simple pygame game engine.pygame-assets (0.1)                    - Assets manager for Pygame appspygame-gui (0.4.2)                     - A GUI module for pygame 2pygame-spritesheet (0.2.0)             - Python pygame extension that provides SpriteSheet class.pygame-minesweeper (1.0)               - Minesweeper game implemented in python using pygamepygame-menu (2.1.0)                    - A menu for pygame, simple, lightweight and easy to usepygame-plot (0.1)                      - Quick visualization of data using pygame with a matplotlib stylepygame (1.9.6)                         - Python Game Development...

在上面,我们搜索了一个名为pygame的库。 它显示与关键字匹配的所有其他软件包。 search命令有助于查找相关软件包。

如果你想要了解有关pip的更多信息,请搜索:Python pip(官方文档)

祝大家学习愉快!

有什么问题可以在下方留言,

谢谢关注。

标签: #python2的pip #python2的pip安装 #pip安装numpy库