Python中文
首页
教程
问答
标签
搜索
登录
注册
一个模块递归地导入它的子模块是一个好的实践吗?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我看到了Python模块的一个通用模式。有时<code>__init__.py</code>导入其子模块:</p> <p>例如</p> <pre><code>mymod/ __init__.py: from . import subm1, subm2 __all__ = ['subm1', 'subm2'] subm1.py: def subf1(): ... __all__ = ['subf1'] subm2.py: def subf2(): ... __all__ = ['subf2'] </code></pre> <p>所以客户端代码只需执行以下操作:</p> ^{pr2}$ <p>而不是:</p> <pre><code>import mymod.subm1 import mymod.subm2 mymod.subm1.subf1() mymod.subm2.subf2() </code></pre> <p>哪一个是最佳实践<sup>TM</sup>?递归导入有什么问题吗?还是应该坚持默认行为?违约行为的基本原理是什么?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>这些做法是平等的。在</p> <p>第一个例子期望两个子模块必须一起使用,这样在用户代码中总是有两个导入。你给他们提供了一条捷径。在</p> <p>第二个期望子模块是独立的块,只与其他模块间接交互。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
5 回答
如何添加表示整数的擦边字符串?
2 回答
如何添加要在Bokeh中使用的新font.ttf文件?
3 回答
如何添加要显示的矩阵XY轴编号和XY轴
8 回答
如何添加计数?
1 回答
如何添加计数器函数?
2 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
7 回答
如何添加计数器来跟踪while循环中的月份和年份?
1 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
3 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
10 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
2 回答
如何添加评论拉梅尔亚姆
4 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
5 回答
如何添加谷歌地点自动完成到Flask?
7 回答
如何添加超时、python discord bot
6 回答
如何添加超过1dp的检查
10 回答
如何添加距离方法
2 回答
如何添加跟随游戏的敌人精灵
2 回答
如何添加路径以便python可以找到程序?
3 回答
如何添加身份验证/安全性以使用happybase访问HBase?
10 回答