常用的python第三方库安装工具大概有三种:
1、pip (分为cmd和conda)(推荐)
2、easy_install
3、setup.py
常见的安装包格式:
1、whl (推荐,一种二进制的)
2、egg(第一个主流打包格式)
4、tar.gz 或 zip
whl和egg文件可以直接将后缀名改为zip,作为zip解压,但在有网的模式下,whl不必解压,用pip的安装命令即可
setup.py常用于tar.gz 或 zip的源码安装
,由于pypi官网下载包非常慢,因此有人会选择下载后安装,也有人会去GitHub上下载源码来安装,setup.py常被用与后者。
一般GitHub上的源码大多为zip、tar.gz、tar.zip、 tar.bz2这类压缩文件,而它们往往自带setup.py
文件。
将其解压到想要安装的路径下,先编译后安装
安装:
1、下载zip并解压;
2、打开cmd,进入解压后的路径;
3、依次执行以下代码
命令如下:
python setup.py build
python setup.py install
Windows的安装包存放的路径为:python安装路径下的\Lib\site-packages。(若要安装在conda的虚拟环境,则在其env中)
Linux的路径应该为: /usr/lib/python3.x/site-packages。 (路径不一定,视情况而定,有的可能在/usr/local/lib)
缺点:
但是这种安装方法有一种非常大的毛病,就是使用该方法安装的包,无法通过pip uninstall卸载干净。
需要手动到/usr/bin/python3.x/site-package(其中python处为对应的Python版本)目录下删除。对于类UNIX系统来说,64位机更麻烦的是,在/usr目录下分为lib和lib64,这两个目录下都会有。
一般情况下其实不建议
使用这种,pip其实也是可以直接安装压缩包的,后面会讲。
实际上,在Python中安装第三方模块,是通过setuptools这个工具完成的.egg包安装
。而easy_install和pip是封装了setuptools的两个包管理工具。
我们要使用easy_install,首先需要setuptools
,当然,现在的版本里都自带了,python3.6以后的略微有点不一样,后面会讲。
但是还是可以提一下:
1、打开官网 http://pypi.python.org/pypi/setuptools ,目前最新版的只有whl和zip两种格式(以前是有exe的,现在似乎没有了,但我感觉现在更方便一点)。
但是whl前提是要用pip安装,而pip有的时候,我们可能需要使用easy_install才能安装,有pip我们也不怎么用easy_install了,所以我们只能下载zip。
2、下载后解压,会发现里面有easy_install.py和setup.py,可以直接使用。
如果是exe,安装后双击 ez_setup.py安装,或在cmd执行命令:
python easy_install.py
安装好easy_install之后就可以用来安装包了,但是建议将easy_install所在路径加入环境变量PATH,否则每次安装包都需要先进入该路径。
Windows的easy_install路径为:Python下的Scripts目录。
Linux的路径应该为: /usr/local/bin。 (路径不一定,视情况而定)
easy_install的使用方法,如安装pip,直接在后面加上包名即可:
# 指定包名
easy_install pip
# 指定网址
easy_install -f *.html pip
# 安装tar/egg
easy_install package.tar/egg
# 安装zip,先解压,然后进入
easy_install .
卸载
easy_install -m pip
升级
easy_install --upgrade pip
联网直接pip安装.whl格式的包
。
使用
# 安装
pip install package
# 卸载
pip uninstall package
# 查看所安装的包
pip list
# 搜索包
pip search package
# 更新
pip install -U package
# 重定向输出项目使用的库到 requirements.txt文件内
pip freeze > requirements.txt
#在其他环境上安装项目的依赖
pip install -r requirements.txt
安装tar.gz和zip使用pip是最简单的,不需要解压,前两种还需要解压。
pip批量安装
有的时候你会发现在没有网络的时候,你想要安装wheel文件,直接pip会出错,这里有一种办法,并且可以批量,就是利用requirements.txt文件。但是,这之前我们还要知道,我们之所以安装wheel文件会失败,是因为本机的python不支持下载的whl文件。
1、我们将所有包下好,包括whl、tar.gz等。
2、然后将包的版本写入requirements.txt,并将它们放在一起。
3、可以直接执行命令,也可以将该命令写入脚本。
命令如下:
pip install --use-wheel --no-index --find-links=./ -r requirements.txt
批量卸载
pip uninstall -y -r requirements.txt
其中-y代表卸载时不询问是否删除,即yes的意思,可以省略,但在脚本里的时候还是加上。
还可以在conda的虚拟环境中直接使用pip install
# 安装(python2)
pip install virtualenv
# 创建虚拟环境,需要预先创建一个目录
virtualenv venv_name
# Windows激活虚拟环境
#1、进入虚拟环境所在目录下的Scripts目录
cd venv_name/Scripts
# 2、激活
activate
# 3、退出,linux同
deactivate
# linux进入并激活虚拟环境目录
source venv_name/bin/activate