概述
根据例子逐个分析
例子思路
根据原理的描述找包或者模块时,系统先去找bulid-in,再在系统的python环境变量下找第三方的包文件,然后再找其他的。
这里我们只研究自己需要导入的包和模块的关系。
如果找自己的包或者模块,是先在平级目录找,然后再顺着找下级目录。
从上面的初步原理看,例子结构设计如下:
sound/
__init__.py
top.py
test_main.py
effects/
__init__.py
echo.py
surround.py
third/
__init__.py
third1.py
formats/
__init__.py
wavread.py
三层目录结构,顶层是sound;中间是'effects'和formats;第三层是在effects目录下增加一层third目录。
每层均包含一个__init__.py文件,文件初始内容如下:
print "============== sound.__init__ =============="
print dir()
主执行文件是test_main.py,初始内容如下:
print "============== test_main.py =============="
print dir()
def test():
print "============== test_main.test =============="
if __name__ =