PIP是Python包管理器,用于安装,升级,删除用Python编程语言编写的包。在本指南中,我们将讨论如何安装pip和管理python包,例如使用pip安装,更新和删除包。此外,我们将看到什么是虚拟环境,如何创建它,以及如何使用venv和/或virtualenv工具隔离虚拟环境中的包。
$ source /bin/activate 对于Python 3.x,您需要安装venv。在基于Ubuntu的系统上,您可以使用以下命令安装它: $ sudo apt-get install python3-venv 现在使用venv创建虚拟环境: $ python3 -m venv
$ source /bin/activate 一旦运行上述命令,您将立即进入虚拟环境。 要停用虚拟环境并返回正常的shell,请运行: $ deactivate 使用Pip管理Python包 现在我们将看到最常见的基本点使用示例。 要查看所有pip命令和常规选项的列表,请运行: $ pip 你应该看到类似下面的输出。
要知道install命令的作用,请运行:
$ pip install --help
pip最常见的用法是从PyPi(Python Package Index)安装。PyPi是一个存储库,包含Python开发人员社区创建的所有包。
安装包
首先创建虚拟环境,如下所示:
使用virtualenv:
$ virtualenv MYENV
用您自己的名字替换MYENV。
使用venv:
$ python3 -m venv MYENV
最后,使用命令激活它:
$ source MYENV/bin/activate
一旦您运行上述命令,您将被置于虚拟环境中:
现在,是时候安装一些软件包了。要安装软件包,例如youtube-dl,请运行:
$ pip install youtube-dl
此命令将安装youtube-dl及其所有依赖项。
要安装特定版本,请运行:
$ pip install youtube_dl=2017.12.14
要安装指定版本以外的版本,请运行:
$ pip install youtube_dl!=2017.12.14
注意等号前面的'!'。
要安装等于或大于指定版本的版本,请运行:
$ pip install youtube_dl>=2017.12.14
要安装特定范围内的版本,例如大于或等于一个版本且小于另一个版本,请运行:
$ pip install youtube_dl>=2017.12.14, <2017.12.20
要安装与某个版本“兼容”的版本:
$ pip install youtube_dl~=2017.12.14
下载包
要下载包含所有依赖项的软件包(不安装它),请运行:
$ pip download youtube-dl
列出所有已安装的包
要查找由pip安装的软件包,请运行:
$ pip freeze
或者
$ pip list
这些命令将使用系统中的pip显示所有已安装的软件包。
搜索包
要搜索特定的包,例如pycparser,请运行:
$ pip search pycparser
此命令将搜索并显示与字符串“pycparser”匹配的结果。如下图
更新包
要以简单的表格列格式列出所有过时的包,请运行:
$ pip list --outdated --format=columns
要更新过时的包,请运行:
$ pip install --upgrade youtube-dl
我们还可以将所有包转储到一个文件中,并一次性更新它们。首先,将所有文件导出到文件:
$ pip freeze > mypackages.txt
现在使用命令一次更新所有包:
$ pip install -r mypackages.txt --upgrade
或者
$ pip install -r mypackages.txt -U
如果上述命令因某种原因无效,请使用以下命令一次更新所有包:
$ pip freeze --local | grep -v '^\e' | cut -d = -f 1 | xargs -n1 pip install -U
将所有已安装的包导出到文件中
有时,您可能希望将所有已安装的软件包导出到文件中,以便在不同的环境中对其进行测试。为此,请运行:
$ pip freeze > MYENV_packages.txt
现在,停用当前的虚拟环境:
$ deactivate
并创建一个新的使用命令:
$ virtualenv MYENV1
用您自己的名字替换MYENV1。
使用venv:
$ python3 -m venv MYENV1
激活新创建的环境:
$ source MYENV1/bin/activate
现在,安装我们之前导出的所有包。
$ pip install -r MYENV_packages.txt
要在没有用户交互的情况下一次安装,请运行:
$ pip install -r MYENV_packages.txt -y
同样,您可以使用以下命令从列表中删除所有包:
$ pip uninstall -r MYENV_packages.txt -y
查看包信息
要查看包的详细信息,请运行:
linuxidc@linuxidc:~/www.linuxidc.com$ pip show networkx
Name: networkx
Version: 1.11
Summary: Python package for creating and manipulating graphs and networks
Home-page: http://networkx.github.io/
Author: Aric Hagberg
Author-email: hagberg@lanl.gov
License: BSD
Location: /usr/lib/python2.7/dist-packages
Requires:
查看包依赖项
我们可以使用“pipdeptree”工具可视化所有已安装软件包的依赖关系。
使用命令安装它:
$ pip install pipdeptree
安装后,您可以使用以下命令查看依赖关系树:
$ pipdeptree
卸载软件包
要卸载/删除已安装的软件包,请运行:
$ pip uninstall youtube-dl
要卸载多个包,请使用逗号分隔指定它们,如下所示:
$ pip uninstall package1, package2
要删除使用pip安装的所有python包,请运行:
$ pip freeze | xargs pip uninstall -y
有时pip不允许您卸载操作系统拥有的软件包。在这种情况下,您可以使用以下命令卸载操作系统不拥有的所有软件包:$ pip uninstall -y $(pip freeze | sed 's;==.*;;g' | tr '\n' ' ')正如我在上一节中提到的,我们可以将所有已安装的软件包转储到一个文件中,并使用以下命令从列表中卸载它们:$ pip uninstall -r MYENV_packages.txt -y在这个阶段,您可能对pip及其用法有了一些了解。要了解更多细节,请运行以下命令查看官方文档和pip帮助部分$ pip --help要不就,$ pip
商务合作联系:root@linuxidc.net长按或扫描左图识别二维码关注Linux公社公众微信号
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx
支持就点下在看并
转发朋友圈吧
使用包管理器安装pip
在Arch Linux及其变体如Antergos,Manjaro Linux上,您可以使用命令安装pip: Python 2: $ sudo pacman -S python2-pip python2-wheel python2-setuptools Python 3: $ sudo pacman -S python-pip python-wheel python-setuptools 在Fedora 21上: Python 2: $ sudo yum upgrade python-setuptools $ sudo yum install python-pip python-wheel Python 3: $ sudo yum install python3 python3-wheel Fedora 22: Python 2: $ sudo dnf upgrade python-setuptools $ sudo dnf install python-pip python-wheel Python 3: $ sudo dnf install python3 python3-wheel 要获得更新版本的pip,setuptools和wheel for Python 2,请启用PyPA CoprRepo使用命令: $ dnf copr enable pypa/pypa 然后运行: $ sudo dnf upgrade python-setuptools $ sudo dnf install python-pip python-wheel 在CentOS/RHEL: pip和wheel在CentOS和RHEL的默认存储库中不可用。要在CentOS,RHEL,Scientific Linux和其他基于RPM的系统上安装pip,请使用以下命令启用EPEL存储库: $ sudo yum install epel-release 然后运行以下命令来安装pip: $ sudo yum install python-pip $ sudo yum install python-wheel 由于setup-tools软件包在默认存储库中可用,因此您可以使用以下命令安装它: $ sudo yum upgrade python-setuptools openSUSE: Python 2: $ sudo zypper install python-pip python-setuptools python-wheel Python 3: $ sudo zypper install python3-pip python3-setuptools python3-wheel 在ebian/Ubuntu: Python 2.x: $ sudo apt-get install python-pip Python 3.x: 将“python”替换为“python3”以安装Python 3.x版本。 $ sudo apt-get install python3-pip 在Ubuntu 12.04版本中,pip3没有打包。如果您使用的是Ubuntu 12.04,则可以使用以下命令安装pip3: $ sudo apt-get install python3-setuptools $ sudo easy_install3 pip 从二进制文件安装pip 如果你想从二进制文件安装pip,只需运行: $ wget https://bootstrap.pypa.io/get-pip.py $ sudo python get-pip.py 请注意,get-pip.py还将安装setuptools和wheel。正如我之前提到的,一些Linux发行版没有在核心存储库中使用。在这种情况下,您可能需要添加一些第三方存储库,例如EPEL。 如果您使用从python.org下载的Python 2> = 2.7.9或Python 3> = 3.4二进制文件,则已经安装了pip。但是,您需要使用命令升级pip: $ sudo pip install -U pip 或者 $ sudo pip install --upgrade pip 要更新所有(pip,setuptools,whell),请运行: $ sudo pip install --upgrade pip setuptools wheel 要找到已安装的pip/pip3版本,请运行: $ pip --version 或者 $ pip -V 示例输出将是: pip 9.0.1 from /usr/lib/python2.7/dist-packages (python 2.7)![f0f04e7fbb498d16a3c668e54862bcb3.png](https://i-blog.csdnimg.cn/blog_migrate/bbebdb2b2a9ffeb65f5879fe80c52203.png)
创建虚拟环境
在安装任何python包之前,建议创建一个虚拟环境。为什么我们需要创建虚拟环境?你可能会问。因为,Python“虚拟环境”允许我们在隔离的位置安装Python包,而不是全局安装它。 我们假设您要安装一个python包,例如youtube-dl,它需要LibFoo的版本1,但另一个应用程序需要版本2.您如何使用这两个应用程序?如果您将所有内容安装到/usr/lib/python2.7/site-packages或/usr/lib/python3.6/site-packages(或任何平台的标准位置),很容易在您遇到的情况下结束无意中升级了不应升级的应用程序。为避免这种情况,我们将虚拟环境中的软件包隔离开来。所有虚拟环境都有自己的安装目录,不会相互交互或冲突。 我们可以使用两个模块创建隔离的python环境,即: 1.venv, 2.virtualenv。 对于Python 2.x,您需要安装virtualenv。为此,请运行: $ sudo pip install virtualenv 现在让我们创建一个虚拟环境。 使用virtualenv: $ virtualenv$ source /bin/activate 对于Python 3.x,您需要安装venv。在基于Ubuntu的系统上,您可以使用以下命令安装它: $ sudo apt-get install python3-venv 现在使用venv创建虚拟环境: $ python3 -m venv
$ source /bin/activate 一旦运行上述命令,您将立即进入虚拟环境。 要停用虚拟环境并返回正常的shell,请运行: $ deactivate 使用Pip管理Python包 现在我们将看到最常见的基本点使用示例。 要查看所有pip命令和常规选项的列表,请运行: $ pip 你应该看到类似下面的输出。
![2d0c171b556214d385366735590443f7.png](https://i-blog.csdnimg.cn/blog_migrate/65183ab500d561139da6c7cd2671ab0d.png)
![75beb9a318e2009adb55d97d7330823b.png](https://i-blog.csdnimg.cn/blog_migrate/82e1c48acc6fb2dba4f3d0c3a63d5c31.png)
![f43e6c4b8c8ce3b1a76234d3d8fc4603.png](https://i-blog.csdnimg.cn/blog_migrate/75e9661145b38bb9116838aebf61a3a7.png)
Name: networkx
Version: 1.11
Summary: Python package for creating and manipulating graphs and networks
Home-page: http://networkx.github.io/
Author: Aric Hagberg
Author-email: hagberg@lanl.gov
License: BSD
Location: /usr/lib/python2.7/dist-packages
Requires:
![2502e942e75ee6aa297a38b90161da71.png](https://i-blog.csdnimg.cn/blog_migrate/ea8732aadc7700264a136d5ce186c6bf.png)
![7b2249c15865bc3d27dc4b46e7102030.png](https://i-blog.csdnimg.cn/blog_migrate/18408ce6c7f01d9a0e1afe00a11f4162.png)
本文永久更新链接地址:https://www.linuxidc.com/Linux/2019-07/159364.htm
![a3cc939464b294e16ec8f4b4d235003d.gif](https://i-blog.csdnimg.cn/blog_migrate/d6a2dabb30587c5f5d856298c9bfda39.gif)
![3f93baa39c98dbdfc8b89201d7d11832.png](https://i-blog.csdnimg.cn/blog_migrate/f444776d43df3e982fad88067846b792.png)
![a3cc939464b294e16ec8f4b4d235003d.gif](https://i-blog.csdnimg.cn/blog_migrate/d6a2dabb30587c5f5d856298c9bfda39.gif)