Python 模块(Module),是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法
使用模块让你能够有逻辑地组织你的 Python 代码段。
把相关的代码分配到一个模块里能让你的代码更好用,更易懂。
模块能定义函数,类和变量,模块里也能包含可执行的代码。
下面编写一个简单的模块,并将该文件命名为hello.py
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
' a test module '
__author__ = 'Author Name'
def test(name):
print('Hello,' + name)
if __name__=='__main__':
test()
第1行和第2行是标准注释,第1行注释可以让这个hello.py
文件直接在Unix/Linux/Mac上运行,第2行注释表示.py文件本身使用标准UTF-8编码;
第4行是一个字符串,表示模块的文档注释,任何模块代码的第一个字符串都被视为模块的文档注释;
第6行使用__author__
变量把作者写进去,这样当你公开源代码后别人就可以瞻仰你的大名;
以上就是Python模块的标准文件模板,当然也可以全部删掉不写,但是,按标准办事肯定没错。
最后,注意到这两行代码:
if __name__=='__main__':
test()
当我们在命令行运行hello
模块文件时,Python解释器把一个特殊变量__name__
置为__main__
,而如果在其他地方导入该hello
模块时,if
判断将失败,因此,这种if
测试可以让一个模块通过命令行运行时执行一些额外的代码,最常见的就是运行测试。
模块定义好后,我们可以使用 import 语句来引入模块,语法如下:
import modname1 [as 模块别名1] # []内为可选项
# 可以并列引入多个模块
import modname1 [as 模块别名1], modname2 [as 模块别名2]...
如果要在其他文件中使用我们的hello
模块,如在main.py
中使用,方法如下
' main.py 文件 '
import hello
hello.test()