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 语句来引入模块,语法如下:

import modname1 [as 模块别名1] # []内为可选项

# 可以并列引入多个模块
import modname1 [as 模块别名1], modname2 [as 模块别名2]...

如果要在其他文件中使用我们的hello模块,如在main.py中使用,方法如下

' main.py 文件 '
import hello
hello.test()