在Python中使用第三方模块的教程


Posted in Python onApril 27, 2015

在Python中,安装第三方模块,是通过setuptools这个工具完成的。Python有两个封装了setuptools的包管理工具:easy_install和pip。目前官方推荐使用pip。

如果你正在使用Mac或Linux,安装pip本身这个步骤就可以跳过了。

如果你正在使用Windows,请参考安装Python一节的内容,确保安装时勾选了pip和Add python.exe to Path。

在命令提示符窗口下尝试运行pip,如果Windows提示未找到命令,可以重新运行安装程序添加pip。

现在,让我们来安装一个第三方库——Python Imaging Library,这是Python下非常强大的处理图像的工具库。一般来说,第三方库都会在Python官方的pypi.python.org网站注册,要安装一个第三方库,必须先知道该库的名称,可以在官网或者pypi上搜索,比如Python Imaging Library的名称叫PIL,因此,安装Python Imaging Library的命令就是:

pip install PIL

耐心等待下载并安装后,就可以使用PIL了。

有了PIL,处理图片易如反掌。随便找个图片生成缩略图:

>>> import Image
>>> im = Image.open('test.png')
>>> print im.format, im.size, im.mode
PNG (400, 300) RGB
>>> im.thumbnail((200, 100))
>>> im.save('thumb.jpg', 'JPEG')

其他常用的第三方库还有MySQL的驱动:MySQL-python,用于科学计算的NumPy库:numpy,用于生成文本的模板工具Jinja2,等等。
模块搜索路径

当我们试图加载一个模块时,Python会在指定的路径下搜索对应的.py文件,如果找不到,就会报错:

>>> import mymodule
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
ImportError: No module named mymodule

默认情况下,Python解释器会搜索当前目录、所有已安装的内置模块和第三方模块,搜索路径存放在sys模块的path变量中:

>>> import sys
>>> sys.path
['', '/Library/Python/2.7/site-packages/pycrypto-2.6.1-py2.7-macosx-10.9-intel.egg', '/Library/Python/2.7/site-packages/PIL-1.1.7-py2.7-macosx-10.9-intel.egg', ...]

如果我们要添加自己的搜索目录,有两种方法:

一是直接修改sys.path,添加要搜索的目录:

>>> import sys
>>> sys.path.append('/Users/michael/my_py_scripts')

这种方法是在运行时修改,运行结束后失效。

第二种方法是设置环境变量PYTHONPATH,该环境变量的内容会被自动添加到模块搜索路径中。设置方式与设置Path环境变量类似。注意只需要添加你自己的搜索路径,Python自己本身的搜索路径不受影响。

Python 相关文章推荐
python的迭代器与生成器实例详解
Jul 16 Python
Python线程的两种编程方式
Apr 14 Python
Python实现带百分比的进度条
Jun 28 Python
Python基于回溯法子集树模板解决最佳作业调度问题示例
Sep 08 Python
CentOS 7 安装python3.7.1的方法及注意事项
Nov 01 Python
详解Python字符串切片
May 20 Python
python @classmethod 的使用场合详解
Aug 23 Python
Python numpy线性代数用法实例解析
Nov 15 Python
Python爬虫库BeautifulSoup的介绍与简单使用实例
Jan 25 Python
Jupyter notebook如何实现指定浏览器打开
May 13 Python
Django框架之路由用法
Jun 10 Python
Python first-order-model实现让照片动起来
Jun 25 Python
在Python中使用模块的教程
Apr 27 #Python
详细介绍Python中的偏函数
Apr 27 #Python
举例讲解Python中装饰器的用法
Apr 27 #Python
Python中的匿名函数使用简介
Apr 27 #Python
Python中用函数作为返回值和实现闭包的教程
Apr 27 #Python
Python中利用sorted()函数排序的简单教程
Apr 27 #Python
Python中的filter()函数的用法
Apr 27 #Python
You might like
php数据库密码的找回的步骤
2011/01/12 PHP
延长phpmyadmin登录时间的方法
2011/02/06 PHP
PHP 验证码的实现代码
2011/07/17 PHP
php面向对象 字段的声明与使用
2012/06/14 PHP
映彩衣的js随笔(js图片切换效果)
2011/07/31 Javascript
javascript中获取下个月一号,是星期几
2012/06/01 Javascript
jquery ajax例子返回值详解
2012/09/11 Javascript
js中Math之random,round,ceil,floor的用法总结
2013/12/26 Javascript
jQuery动画与特效详解
2015/02/01 Javascript
js实现iPhone界面风格的单选框和复选框按钮实例
2015/08/18 Javascript
原生JS实现-星级评分系统的简单实例
2016/08/21 Javascript
基于JavaScript实现复选框的全选和取消全选
2017/02/09 Javascript
Node.js五大应用性能技巧小结(必须收藏)
2017/08/09 Javascript
Vue与Node.js通过socket.io通信的示例代码
2018/07/25 Javascript
微信小程序实现搜索指定景点周边美食、酒店
2019/05/18 Javascript
JS数组splice操作实例分析
2019/10/12 Javascript
vue中使用GraphQL的实例代码
2019/11/04 Javascript
[47:52]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第二场 11.26
2020/11/30 DOTA
python使用心得之获得github代码库列表
2014/06/25 Python
Python单元测试框架unittest简明使用实例
2015/04/13 Python
Python配置mysql的教程(推荐)
2017/10/13 Python
解决PyCharm控制台输出乱码的问题
2019/01/16 Python
pytorch梯度剪裁方式
2020/02/04 Python
html5 canvas 使用示例
2010/10/22 HTML / CSS
HTML5中外部浏览器唤起微信分享
2020/01/02 HTML / CSS
本科生详细的自我评价
2013/09/19 职场文书
自我评价如何写好?
2014/01/05 职场文书
护士自我介绍信
2014/01/13 职场文书
单位领导证婚词
2014/01/14 职场文书
2014年学习雷锋活动总结
2014/03/01 职场文书
爱心捐款倡议书范文
2014/05/12 职场文书
优秀电子工程系毕业生求职信
2014/05/24 职场文书
乡镇保密工作责任书
2014/07/28 职场文书
2014年稽查工作总结
2014/12/20 职场文书
2016应届毕业生实习心得体会
2015/10/09 职场文书
初中生物教学反思
2016/02/20 职场文书