我有一个带有许多简单帮助函数的模块,但维护起来却变得庞大而繁琐.我想把它分成一个简单的包.我的包目录在PYTHONPATH上定义,如下所示:
test
|--__init__.py <---this is empty
|--a.py
|--b.py
Run Code Online (Sandbox Code Playgroud)
这是以通常的方式导入(导入测试)但是在检查(dir(测试))时,库不包含模块a或b,只包含一些顶级属性.我可以用一个暗示出了什么问题.谢谢!
解决方案如下: init文件现在自动加载我想要访问的模块.这尊重Python 3.4固有的绝对路径假设.
from .a import a
from .b import b
Run Code Online (Sandbox Code Playgroud)
后续行动: 我的目的是将每个帮助程序脚本作为自己的模块,从而导致许多小模块易于查找和维护.这是惯用的吗?效率低下?我得到了对init文件的维护含义.分享的经验或最佳实践?谢谢.