模块&包
模块文件
模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。 其实我们之前写的每个py文件就可以认为是一个模块
- 模块文件语法和正常python文件一样
包
包是一种管理 Python 模块命名空间的形式,采用"点模块名称"。 文件夹下面有文件夹最下面是模块文件,文件夹视为包
每个包下面必须含有__init__.py
文件,即使为空,也可以放置包初始化时的代码,与php等语言的命名空间很像
结构
这是一个简单的包结构
sound/ #包
__init__.py
formats/ #子包
__init__.py
wavread.py #模块
wavwrite.py
effects/
__init__.py
echo.py
surround.py
filters/
__init__.py
equalizer.py
我写的一个包module1在python.tar内
模块的编写
语法同平时写的python脚本一样,略
提一下__name__
,以__
开头的变量,是内置变量(类似php等其他语言的魔术变量)
- 当直接运行py文件时,
__name__
默认为'__main__'
,可用于判断模块是直接运行还是被引用
我们可以在模块中加一句
用来调试模块if __name__='__main__': 当py文件直接运行时,执行的语句 else: 当py文件作为模块被引入时,执行的语句