html5中文学习网

您的位置: 首页 > 网站及特效实例 > jquery特效 » 正文

Python创建模块及模块导入的方法_编程语言综合

[ ] 已经帮助:人解决问题

   本文实例讲述了Python创建模块及模块导入的方法。分享给大家供大家参考。具体分析如下:5APHTML5中文学习网 - HTML5先行者学习网

  python学习手册中写道:5APHTML5中文学习网 - HTML5先行者学习网

  定义模块,只要使用文本编辑器,把一些python代码输入到文本中,然后以.py为后缀名进行保存,任何此类文件都会被认为是python模块。5APHTML5中文学习网 - HTML5先行者学习网

  比如说,下面的代码输入到一个文件中,就可以看作是一个模块:5APHTML5中文学习网 - HTML5先行者学习网

  ?5APHTML5中文学习网 - HTML5先行者学习网

1
2
3
4
def printme(var):
print var
if __name__ == '__main__':
printme(1)

  假设说输入到a.py中,那么import a就可以把这个模块导入。5APHTML5中文学习网 - HTML5先行者学习网

  然后可执行a.printme(3),屏幕即可打印出3:5APHTML5中文学习网 - HTML5先行者学习网

  ?5APHTML5中文学习网 - HTML5先行者学习网

1
2
3
>>> a.printme(3)
3
>>>

  一个模块顶层定义的变量,会自动变成模块的属性。例如:5APHTML5中文学习网 - HTML5先行者学习网

  ?5APHTML5中文学习网 - HTML5先行者学习网

1
2
3
4
5
data=[1,2,3]
def printme(var):
print var
if __name__ == '__main__':
printme(1)

  data变量就是模块的一个属性。其实printme也是一个属性,只不过是一个函数罢了。5APHTML5中文学习网 - HTML5先行者学习网

  引入模块示例如下:(假定此时data=[1,2,3]未定义)5APHTML5中文学习网 - HTML5先行者学习网

  ?5APHTML5中文学习网 - HTML5先行者学习网

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>>> import a
>>> a.data
 
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
a.data
AttributeError: 'module' object has no attribute 'data'
>>> reload(a)
<module 'a' from 'C:/pya.pyc'>
>>> a.data
 
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
a.data
AttributeError: 'module' object has no attribute 'data'
>>>

  从上述提示可以看出data属性未定义,此时再在a.py文件中定义data=[1,2,3],重新加载a模块,并输出data属性:5APHTML5中文学习网 - HTML5先行者学习网

  ?5APHTML5中文学习网 - HTML5先行者学习网

1
2
3
4
5
>>> reload(a)
<module 'a' from 'C:/pya.py'>
>>> a.data
[1, 2, 3]
>>>

  这里的reload函数可以重新加载一个模块。如果在模块代码中更改了,那么需要重新加载。5APHTML5中文学习网 - HTML5先行者学习网

  上面a.data,就是访问模块中的属性。5APHTML5中文学习网 - HTML5先行者学习网

  上面的例子是导入一个文件作为一个模块。5APHTML5中文学习网 - HTML5先行者学习网

  其实python的模块导入还有更丰富的内容。5APHTML5中文学习网 - HTML5先行者学习网

  除了模块名之外,python也可以导入指定目录路径。python代码的目录就称为包。因此,这类导入就称为包导入。事实上,包导入是把计算机上的目录变成python的一个命名空间。而属性就是目录中包含的子目录或者是模块文件。5APHTML5中文学习网 - HTML5先行者学习网

  看下面例子:5APHTML5中文学习网 - HTML5先行者学习网

  在我的桌面上有一个aa文件夹,里面有bb文件夹,bb里面有a.py这个文件。5APHTML5中文学习网 - HTML5先行者学习网

  那么在aa和bb文件夹中分别放置一个__init__.py,之后,在命令行中import aa.bb.a,就可以导入模块a了。5APHTML5中文学习网 - HTML5先行者学习网

  希望本文所述对大家的Python程序设计有所帮助。5APHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助