码迷,mamicode.com
首页 > 编程语言 > 详细

python模块

时间:2016-06-11 10:28:54      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:

模块介绍

为什么用模块

在代码量庞大的时候,如果靠一个脚本来进行函数式编程,对于脚本的可读性及后期脚本的维护带来极大的不便,而且无法分辨函数间的调用关系,所以,可以将一组功能类似的函数单独放在一个py文件里,在主py文件进行调用。这样既可以提高可读性,哪个流程出问题了,很快就定位到函数了,也便于维护。而这个由多个功能类似的函数堆积成的脚本,就简单称之为模块

如何导入

  • import 指令 使用import命令导入模块。会将模块所有对象导入到当前命名空间中,调用模块里对象时,需加模块名,如 sys.path,即调用sys模块的path对象。python有一个定义模块位置的变量,即sys.path,
>>> import sys
>>> sys.path
[‘‘, /usr/local/python3/lib/python35.zip, /usr/local/python3/lib/python3.5, /usr/local/python3/lib/python3.5/plat-linux, /usr/local/python3/lib/python3.5/lib-dynload, /usr/local/python3/lib/python3.5/site-packages]

 

当python解释器遇到import指令时,会先在当前脚本目录查找指令后面的模块名,如果没有会继续按sys.path里定义的位置依次查找,直到找到这个模块为止,如果到最后没查找到,python会报一个模块找不到的错误

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

 

  • from ... import 指令

该指令会将模块中导入一个指定的部分到当前命名空间中,在调用函数对象时,可直接使用函数对象名,不需要加函数名。此用法一般用于要导入的模块里对象和本脚本中对象命名有冲突时候,至加载需要的模块对象,也可以使用as 将此对象重命名,如

>>> from sys import path
>>> path
[‘‘, /usr/local/python3/lib/python35.zip, /usr/local/python3/lib/python3.5, /usr/local/python3/lib/python3.5/plat-linux, /usr/local/python3/lib/python3.5/lib-dynload, /usr/local/python3/lib/python3.5/site-packages]
>>> from sys import path as abc
>>> abc
[‘‘, /usr/local/python3/lib/python35.zip, /usr/local/python3/lib/python3.5, /usr/local/python3/lib/python3.5/plat-linux, /usr/local/python3/lib/python3.5/lib-dynload, /usr/local/python3/lib/python3.5/site-packages]

 

  • from ... import * 指令

和import 导入方法一样。只不过调用的时候不需要加模块名

>>> from sys import *
>>> path
[‘‘, /usr/local/python3/lib/python35.zip, /usr/local/python3/lib/python3.5, /usr/local/python3/lib/python3.5/plat-linux, /usr/local/python3/lib/python3.5/lib-dynload, /usr/local/python3/lib/python3.5/site-packages]
>>> version
3.5.1 (default, Jun  5 2016, 16:46:00) \n[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]

 

PS:自定义模块命名需要规范,不能和python内置的模块名重合,否则,将优先调用当前代码目录下的模块,造成python内置模块不能使用

python模块

标签:

原文地址:http://www.cnblogs.com/pycode/p/5574720.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!