'具有延迟ini的棘手模块导入'

2024-06-02 08:32:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个简单的模块结构:

mod1/
    __init__.py
    clsOne.py
    clsN.py

其中代码如下所示:

^{pr2}$

现在我使用它们如下:

Way #1) 
    from mod1.clsOne import MyFirstClass

或者:

Way #2) 
    from mod1 import clshnd 

是否可以导入名称clshnd,但以这样的方式,其他处理程序(即nhnd)只在需要时初始化(当显式导入时)?
目前这两种方法:Way#1和Way#2导致模块初始化调用,这意味着:还创建了NThClass对象。我想避免它,因为我有很多这样的类,并且希望避免长init,但是我也希望有简单的访问(方法2)。
是否有可能,或者我必须重新设计模块和文件(从init中删除)?在

兹比涅夫


Tags: 模块方法代码frompyimportinit结构