Python包管理工具pip的安装和使用

Python012

Python包管理工具pip的安装和使用,第1张

Python有两个著名的包管理工具easy_install.py和pip。在Python2.7的安装包中,easy_install.py是默认安装的,而pip需要我们手动安装。

方法1:利用常用curl获取

>>后面是指定获取的pip脚本的名字,也可以是curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

方法2:利用wget获取,先要安装wget

备注:看网上还有利用easy_install安装pip,但是我尝试了并没有成功

原因是 Python.org sites 终止支持TLS1.0和1.1版本,TLS需要>=1.2

参考: https://stackoverflow.com/questions/49768770/not-able-to-install-python-packages-ssl-tlsv1-alert-protocol-version

主要命令

所有命令中,最重要的两个命令是install和uninstall。

pip支持四种方式安装python包。

从PyPI安装一个包

安装一个全局区域的包,一般需要sudo权限。在mac系统上,即使是管理员也无法安装,自从OS X El Capitan及以后的版本包含了一套安全技术(System Integrity Protection简称为SIP)来防止恶意软件修改系统保护区域。具体可参考SIP。因此,我们有时候需要将PyPI包安装到用户区,这个时候,可以用.

pip在升级软件包之前会自动卸载旧的软件包。

可以将所有需要安装的包放入一个requirements.txt文件中,然后可以一次安装。requirements.txt 文件的每一行都要表明安装的内容,而且尽量不要依赖文件中指定包的前后安装顺序。

从git安装

从svn安装

从一个分支安装

还有很多其他的包安装功能,但是上面的已经满足了大部分需求。其他的请参考 文档 。

pip uninstall可以卸载大部分的包,除了一下两种情况

使用方式主要有两种:

卸载单个包

卸载多个包

pip check用来验证已安装的包是否有兼容的依赖性问题。

上面的结果说明matplotlib包有两个依赖包没有安装。

pip search用来搜索名字或者摘要中包含搜索关键字的PyPI包。

选项只有一个,就是指定PyPI的url,默认url为 https://pypi.python.org/pypi

例如,search frida

以下两者都可以用,结果同上。

pip list命令会按照字典序排列列举已安装的包,包括可编辑的包。

主要有如下选项:

输出格式:

legacy:将要被废弃

freeze

columns

json

当某些时候debug的时候,需要提供一个完整的python环境,python freeze提供了此功能,它能够输出机器上python环境的快照(所有已安装的包)。

下面是freeze命令的选项:

输出用户区安装的前5个安装包:

pip show可以用来显示每个包的具体信息。show命令只有一个选项 -f,用来显示安装包的文件列表。

$ pip show -f|--files packageName

更多命令请参考 文档

pip默认的index-url是 https://pypi.python.org/pypi/ ,

为了提高速度,我们可以更改pip源为国内的阿里云源。更改方法如下:

创建配置文件

添加阿里源

pip.conf内容如下:

WinPython 新版本不再支持Windows XP平台,会出现错误提示WindowsError 127。

按照官网论坛上的解决方案(https://github.com/winpython/winpython/issues/17),把Pyzmq的版本(14.5)替换为旧版本(13.0),测试正常。

具体方法如下:安装最新版本的WinPython-32bit-2.7.9.4,然后安装2013年的最晚版本WinPython-32bit-2.7.6.2,提取2.7.6.2版本下的zmq文件夹。

直接装2.x系列和3.x系列的最新版本行了,不需要严格对应安装那两个版本。

Python 3.3.2

32位:http://www.python.org/ftp/python/3.3.2/python-3.3.2.msi 

64位:http://www.python.org/ftp/python/3.3.2/python-3.3.2.amd64.msi

Python 2.7.5

32位:http://www.python.org/ftp/python/2.7.5/python-2.7.5.msi

64位:http://www.python.org/ftp/python/2.7.5/python-2.7.5.amd64.msi

如果你的是64位系统,那么选择32位或64位版本都可以,不过64位更佳。如果是32位系统,那只能用32位版本。