python安装第三方的包
转载自:http://blog.csdn.net/xyqzki/article/details/38414433
第一种基本安装方法
1 下载第三方包,解压
2 在命令提示符里输入cmd,然后用cd进入到第三方包的路径下
3 输入python setup.py build
4 输入python setup.py install
看到包内的文件在安装即可……
第二种 用pip和virtualenv安装
p可以很方便的安装、卸载和管理Python的包。
virtualenv则可以建立多个独立的虚拟环境,各个环境中拥有自己的python解释器和各自的package包,互不影响。
pip和virtualenv可以很好的协同工作,同时使用这两个工具非常方便。
一般先安装pip,安装好后,pip install virtualenv就可以自动从网上下载并安装virtualenv了。然后virtualenv env1就可以创建一个名为env1的虚拟环境了,进入这个虚拟环境后,再使用pip install安装其它的package就只会安装到这个虚拟环境里,不会影响其它虚拟环境或系统环境。
当需要将虚拟环境env1迁移或复制到另一个虚拟环境(可能不在同一台机器上)env2时,首先仍然需要在目的机器上安装pip和virtualenv,然后采用以下方法之一安装其他的package:
- 1.直接将env1里的文件全部复制到env2里,然后修改涉及路径的文件。此种方法可能正常使用,但显然不是好办法。
- 2.进入原虚拟环境env1,然后执行pip freeze > requirements.txt将包依赖信息保存在requirements.txt文件中。然后进入目的虚拟环境env2,执行pip install -r requirements.txt,pip就会自动从网上下载并安装所有包。
- 3.pip默认会从pypi服务器(http://pypi.python.org/simple)下载包的安装文件,如果目的机器无法连外网,则可以采用以下办法:
- 3.1搭建自己的pypi服务器。专业的,可以使用第三方的软件包来搭建一个完整的pypi镜像服务器,参考http://www.worldhello.net/2011/03/14/2357.html。更快速的方法只需要一条命令python -m SimpleHTTPServer即可完成搭建服务器,具体的目录结构可参考原pypi服务器,简而言之,就是把安装文件打包放入目录即可。搭建好服务器之后,在目的虚拟环境中,就可以使用pip来安装了,命令如:pip install -i http://127.0.0.1:8000/ -r requirements.txt
- 3.2如果你实在不想搭建pypi服务器,也有办法。首先将所有包的安装文件下载下来,可以手动下载,也可以使用pip,如pip install -d /path/to/save/ -r requirements.txt,然后自己修改requirements.txt文件,将每一行改成对应的包的安装文件的路径。最后在目的虚拟环境中使用pip安装,如pip install -r requirements.txt即可。
- 3.3还有一种途径,就是pip提供的bundle选项。首先执行pip bundle MyEnv.pybundle -r requirements.txt,将生成一个MyEnv.pybundle文件,该文件夹包含所有包的安装文件(注意必须后缀名必须是.pybundle),默认是重新从pypi服务器下载安装文件的,如果愿意,也可以利用3.1中的方法,指定本地的pypi服务器。然后在目的虚拟环境中执行pip install MyEnv.pybundle即可。
- 4.pip install还有许多有用的选项,如--download-cache=DIR可以指定下载安装文件时缓存至DIR路径,下次需要时则直接读取缓存文件。具体选项可以执行pip help install得到详细信息。
- 5.另外,还可以将自己的包上传至pypi服务器,分享给所有人。具体可参考http://guide.python-distribute.org/creation.html和http://matrix.42qu.com/10734668。
easy_install简介:
easy_install是由PEAK(Python Enterprise Application Kit)开发的setuptools包里带的一个命令,所以使用easy_install实际上是在调用setuptools来完成安装模块的工作。 Perl 用户比较熟悉 CPAN,而 Ruby 用户则比较熟悉 Gems;引导 setuptools 的ez_setup工具和随之而生的扩展后的easy_install 与 “Cheeseshop”(Python Package Index,也称为 “PyPI”)一起工作来实现相同的功能。它可以很方便的让您自动下载,编译,安装和管理Python包。
第三种 用Setuptools和virtualenv安装
Setuptools简介:
setuptools是 Python Enterprise Application Kit(PEAK)的一个副项目,它 是一组Python的distutilsde工具的增强工具(适用于 Python 2.3.5 以上的版本,64 位平台则适用于 Python 2.4 以上的版本),可以让程序员更方便的创建和发布 Python 包,特别是那些对其它包具有依赖性的状况。
经常接触Python的同学可能会注意到,当需要安装第三方python包时,可能会用到easy_install命令。easy_install是由PEAK(Python Enterprise Application Kit)开发的setuptools包里带的一个命令,所以使用easy_install实际上是在调用setuptools来完成安装模块的工作。
Setuptools安装:
A. 使用ez_setup.py安装
这是 setuptools 自豪的一种安装方式,只需要一个大约 8K 作为的脚本ez_setup.py,就能自动为用户安装包括 setuptools 自身在内的许多 Python 包。
(参考:http://bkeep.blog.163.com/blog/static/12341429020123395532879/)
使用这种方式,用户只需要下载 ez_setup.py 并运行,就可以自动下载和安装适合用户当前 Python 版本的适当的 setuptools egg 文件(当然,用户需要 Python 2.3.5 以上的版本,64 位操作系统的用户则需要 Python 2.4 以上的版本)。此外,这段脚本还会将可执行的easy_install 脚本安装到用户所有的操作系统 Python 可执行脚本正常应该安装的位置(例如,Windows 用户会安装到 Python 安装目录下的 Scripts 目录中)。关于这种安装方法的更详细说明和注意事项,请参考其官方说明(见扩展阅读)。简单的安装命令如下:
wget -q ez_setup.py下载地址(见扩展阅读) 安装完后,最好确保
B. 使用完整的安装包安装
当然,用户也可以使用 setuptools 在 Python Cheese Shop 上发布的合适的完整的发布版本来安装。对于使用 Windows 的用户,这也是挺方便的方法。
下载完成后双击执行安装文件
,即可在D:\Program Files\python2.7\scripts下安装easy_install。包含一个easy_install.exe,然后进行环境变量设置,在系统环境变量中做如下设置:
(也就是将D:\Program Files\python2.7\scripts添加到环境变量中)
许多 Linux 发行版的官方包管理仓库都包含 setuptools 的某个版本。例如,如果你跟我一样使用Ubuntu ,那安装 setuptools 只是简单的进行如下操作:
# apt-get install python-setuptools
Setuptools安装好后就可以用easy_install安装模块了
easy_install 使用方法:
使用方法非常简单,在命令行输入“easy_install 参数”即可。
a、通过模块名称来安装。setuptools会自动搜索PyPI 以查找最新版本的模块。如果找到的话,她会自动下载、编译和安装:例如
easy_install SQLObject
easy_install "python_dateutil==1.5"
easy_install "python_dateutil>=1.5"
说明,安装过程可能需要权限,如果是ubuntu的话,可以加上sudo
b、指定查找页面("download page")来使用名称和版本信息来安装或升级一个模块:
easy_install -f (此处添加一个url,百科不让加) SQLObject
c、从指定模块下载地址来下载模块源码并在下载成功之后编译安装
easy_install (此处添加一个模块下载url,百科不让加,可参考扩展阅读)
d、在本地已经存在的egg文件基础上来安装模块
easy_install /my_downloads/OtherPackage-3.2.1-py2.3.egg
e、升级一个已经安装的模块到最新版本,如果在PyPI中这个模块有最新版本。
easy_install --upgrade PyProtocols
f、从源码中安装模块(源码已经下载并解压到当前文件夹下)(New in 0.5a9)
easy_install .
g、模块卸载 easy_install -m package-name (比如easy_install -m pylab)
如果想删除通过easy_install安装的软件包,比如说:MySQL-python,可以执行命令:
easy_install -m MySQL-python
注:此操作会从easy-install.pth文件里把MySQL-python的相关信息抹去,剩下的egg文件,你可以手动删除。
用easy_install安装networkx:
如果用方法a安装,显示download error,可转用其它方法,如d。
安装完毕,进行测试。
打开python-command line,进行如图输入“import networkx as nx” "print nx",就有相关显示,如果没有成功,会提示不认识networkx类库的
开发环境为eclipse的用户,安装一个新的python开发包后,import后不能使用包内的方法。
解决方法:
需要在Preferences-pyDev-Interpreter里重新配置Python的编译器,因为当前没有包含新加进来的包
可以删除掉,重新加上。
否则会导致import模块后,模块内的方法仍然不能调用。
参考资料:http://www.cnblogs.com/zhuyp1015/archive/2012/07/17/2596495.html
http://blog.csdn.net/moodytong/article/details/7282008
http://blog.163.com/yang_jianli/blog/static/161990006201151022355502/
http://www.cnblogs.com/kkgreen/archive/2012/08/03/2622251.html
如果说强大的标准库奠定了python发展的基石,丰富的第三方库则是python不断发展的保证,随着python的发展一些稳定的第三库被加入到了标准库里面,这里有6000多个第三方库的介绍:点这里或者访问:http://pypi.python.org/pypi?:action=index。下表中加粗并且标红的都是我平时使用较多的一些第三方库。(P.S.CSDN的这个表格功能太难用了,改HTML代码调整了好半天啊,才见得人!)
常用Python第三方库 |
||
分类 | 库名称 | 库用途 |
Web框架 | Django | 开源web开发框架,它鼓励快速开发,并遵循MVC设计,我以前用过很多次,比较好用,开发周期短 |
ActiveGrid | 企业级的Web2.0解决方案 | |
Karrigell \bottle\bootstrap\ Flask |
简单的Web框架,自身包含了Web服务,py脚本引擎和纯python的数据 库PyDBLite |
|
webpy | 一个小巧灵活的Web框架,虽然简单但是功能强大 | |
CherryPy | 基于Python的Web应用程序开发框架 | |
Pylons | 基于Python的一个极其高效和可靠的Web开发框架 | |
Zope | 开源的Web应用服务器 | |
TurboGears | 基于Python的MVC风格的Web应用程序框架 | |
Twisted | 流行的网络编程库,大型Web框架 | |
Quixote | Web开发框架 | |
科学计算 | Matplotlib | 用Python实现的类matlab的第三方库,用以绘制一些高质量的数学二维图形 |
SciPy | 基于Python的matlab实现,旨在实现matlab的所有功能 | |
NumPy | 基于Python的科学计算第三方库,提供了矩阵,线性代数,傅立叶变换等等的解决方案 | |
GUI | PyGtk | 基于Python的GUI程序开发GTK 库 |
PyQt | 用于Python的QT开发库 | |
WxPython | Python下的GUI编程框架,与MFC的架构相似 | |
Tkinter | Python下标准的界面编程包,因此不算是第三方库了o(∩_∩)o | |
其它 | BeautifulSoup | 基于Python的HTML/XML解析器,简单易用 |
PIL | 基于Python的图像处理库,功能强大,对图形文件的格式支持广泛 | |
MySQLdb | 用于连接MySQL数据库 | |
cElementTree | 高性能XML解析库,Py2.5应该已经包含了该模块,因此不算一个第三方库了 | |
PyGame | 基于Python的多媒体开发和游戏软件开发模块 | |
Py2exe | 将python脚本转换为windows上可以独立运行的可执行程序 | |
pefile | Windows PE文件解析器 |
python安装第三方的包的更多相关文章
- sae python安装第三方模块
sae python安装第三方模块 经过这一个星期的折腾,发现编程真心不是看出来的,真心是跟着书上的代码敲出来的.sae的服务做得很好,不过有时候会崩就是了.当sae上没有自己所需要的第三方模块时,可 ...
- python安装第三方库报错visual c++ 14.0 is required
使用python安装第三方库时报错如下: error: Microsoft Visual C++ 14.0 is required. Get it with “Microsoft Visual C++ ...
- Python安装第三方库的安装技巧
电脑:Windows10 64位. Python IDE 软件:JetBrains PyCharm Community Edition 2018.1.3 x64 Python version : Py ...
- Python 安装 第三方库的安装技巧
Python 安装 第三方库的安装技巧 我的电脑:Windows 10 64位. Python IDE 软件:PyCharm 2016.1.4 Python version : Python 3.5. ...
- Python安装第三方库文件工具——pip
Python安装第三方库文件一般使用pip. 1.pip的安装 (1)下载pip 进入https://pypi.python.org/pypi/pip#downloads
- python安装第三方库--换镜像源
python安装第三方库--换镜像源 1. 更换anaconda源 清华大学镜像:清华大学镜像 anaconda下载地址:https://mirrors.tuna.tsinghua.edu.cn/an ...
- Node.js 安装第三方模块包(npm),通过 package.json配置信息安装项目依赖的模块
npm下载安装的第三方模块包官网(提供包名和使用方法):https://www.npmjs.com/ 淘宝镜像(国内,比较快):https://npm.taobao.org/ commonjs01.j ...
- Python安装第三方包(模块/工具)出现链接超时,网速慢,安装不上的问题如何解决
之前我的电脑重新装了系统以后,发现安装完Python后, 使用pip linstall 安装第三方包的时候,网速慢的一匹 有时候只有几百b/s ,而且还动不动就会出现无法安装,链接超时等问题. 今天我 ...
- 笔记——malloc、free、不同数据类型操作、.pyc文件、python安装第三方包、验证一个网站的所有链接有效性
C — malloc( ) and free( ) C 语言中使用malloc( )函数申请的内存空间,为什么一定要使用free释放? **malloc()函数功能:是从堆区申请一段连续的空间,函数结 ...
随机推荐
- 变形和透视 perspective
前面介绍了css3 2D变形(transform)移动.缩放.旋转.倾斜 有2D 也有3D,例如3D transform中有下面这三个方法: rotateX( angle ) rotateY( ang ...
- [Luogu] 树链剖分
模板题,对于对为某个点为根的子树进行处理时,只需每个节点记录两个值 分别为搜索以该节点为根的子树时的最初搜索序和最末搜索序,将这两 个数作为线段树区间操作的端点进行操作 #include <bi ...
- [转][c++11]我理解的右值引用、移动语义和完美转发
c++中引入了右值引用和移动语义,可以避免无谓的复制,提高程序性能.有点难理解,于是花时间整理一下自己的理解. 左值.右值 C++中所有的值都必然属于左值.右值二者之一.左值是指表达式结束后依然存在的 ...
- P1197 [JSOI2008]星球大战——链式前向星+并查集
https://www.luogu.org/problem/P1197 这道题算是关闭农场的加强版吧,数据有点大,矩阵存不下: 也是记录删点操作,从后往前加边: 先将每个点都算成一个连通块,然后每连一 ...
- Allure自动化测试报告之修改allure测试报告名称
1.从github获取allure代码 https://github.com/allure-framework/allure2 2.安装gradle,用于打包jar brew install grad ...
- sqlserver 两 表 数据 复制 (附加 跨服务器 查询的方法)
一 : 这个sql 语句 可以快速的 将 一 个旧表 中的指定字段的数据 复制到 另一个新表的指定字段中 insert into dbo.Customer ( CustomerId , Custome ...
- Hadoop hadoop的介绍和几种模式
Hadoop简介 Hadoop软件库是一个开源框架,允许使用简单的编程模型跨计算机集群分布式处理大型数据集.它旨在从单个服务器扩展到数千台计算机,每台计算机都提供本地计算和存储.库本身不是依靠硬件来提 ...
- checkbox取反
var qxs = document.getElementsByName("qx"); for(var i=0;i<qxs.length;i++){ var e=qxs[ ...
- 关于SQLServer 中行列互转的实例说明
这几天在做一个招标系统中审批模块,其中关于报价信息这块,用到了pivot和unpivot来实现数据的行列互转,下面简单介绍一下,实际案例,便于回忆和记录相关的条件下使用的情况.pivot 与 unpi ...
- vscode远程代码同步
参考资料: https://blog.csdn.net/u012560340/article/details/83030680 https://github.com/liximomo/vscode-s ...