小编Joe*_*vin的帖子

将模块转换为包时出错

我有一个带有许多简单帮助函数的模块,但维护起来却变得庞大而繁琐.我想把它分成一个简单的包.我的包目录在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文件的维护含义.分享的经验或最佳实践?谢谢.

python packages

1
推荐指数
1
解决办法
58
查看次数

标签 统计

packages ×1

python ×1