包通常是使用用“圆点模块名”的结构化模块命名空间。例如,名为 假设你现在想要设计一个模块集(一个“包”)来统一处理声音文件和声音数据。存在几种不同的声音格式(通常由它们的扩展名来标识,例如: sound/ Top-level package
__init__.py Initialize the sound package
formats/ Subpackage for file format conversions
__init__.py
wavread.py
wavwrite.py
aiffread.py
aiffwrite.py
auread.py
auwrite.py
...
effects/ Subpackage for sound effects
__init__.py
echo.py
surround.py
reverse.py
...
filters/ Subpackage for filters
__init__.py
equalizer.py
vocoder.py
karaoke.py
...
当导入这个包时,Python通过 为了让 Python 将目录当做内容包,目录中必须包含 用户可以每次只导入包里的特定模块,例如: import sound.effects.echo
这样就导入了 sound.effects.echo.echofilter(input, output, delay=0.7, atten=4)
导入包时有一个可以选择的方式: from sound.effects import echo
这样就加载了 echo.echofilter(input, output, delay=0.7, atten=4)
还有另一种变体用于直接导入函数或变量: from sound.effects.echo import echofilter
这样就又一次加载了 echofilter(input, output, delay=0.7, atten=4)
需要注意的是使用 相反,使用类似 |
Archiver|手机版|笨鸟自学网 ( 粤ICP备20019910号 )
GMT+8, 2024-11-21 17:04 , Processed in 0.033790 second(s), 18 queries .