python中的包可以理解为模块的集合。每个包也既可以为单包也可以有多个小包组成。
Python中的package定义很简单,其层次结构与目录的层次结构相同,但是每个package必须包含一个__init__.py的文件,__init__.py可以为空文件,只要它存在,就表明此目录应被作为一个package处理。
整个包的目录结构如下:
package/ ##包的目录
__init__.py ##包含的__init__.py文件
add_sub/ ##小包目录
__init__.py ##子包含的__init__.py文件
add.py ##add模块,模块中定义add()函数,用于求和
sub.py ##sub模块
mul_div/ ##小包目录
__init__.py##子包含的__init__.py文件
mul.py##mul模块
div.py##div模块
至此,整个包就创建完成。
1)包引入:(test.py需要和包在同一级目录)
##test.py
from package.add_sub import add
print add.add(7,2)
2)*引入:(必须在所引用的目录下的__init__.py文件中添加所引用的模块代码)
如引入add_sub包的add.py和sub.py
__init__.py文件如下:
__all__ = ["add", "sub"]
##test.py
from package.add_sub import * ##就会按照__all__指定的进行引入
print add.add(7,2)