在 Python 中,如何在同一文件夹中定义的类中调用__init__.py函数



我有一个python包

- my_package
- __init__.py
# inside
def getSingleton()  # gets an instance of an object in the package
- AClass.py
# inside
class AClass:
...
def instanceMathod(self,arg):
singleton = (parent package).getSingleton()

我想从模块的类实例中使用模块"静态"函数,即:从包含的类实例中引用父模块? 能做到吗?有没有更好的方法? 很多工作都很好,因为当所有导入模块都被销毁时,当包含模块被销毁时,单例将被销毁。我正在使用 python3

使用:

def instanceMethod(self,arg):
from . import getSingleton
singleton = getSingleton()

在这里,我们将导入推迟到调用该方法,而不是在全局范围内导入,以防mypackage.__init__也导入AClass

最新更新