我有一个模块,它在其中定义了一个 Manager 类。我希望该模块创建此类的一个实例并将该模块用作此类的“全局实例”。例如:
class Manager:
def func(self):
print('stuff')
instance = Manager()
def func():
instance.func()
有没有办法让 module.x 返回 module.instance.x?(有点像模块级属性)
更新:这个问题的答案只涵盖了我用例的一半(即,它不是重复的,该问题所问的是不同的);我还需要模块的属性也可用。例子:
class Manager:
def __init__(self):
self.x = 3
def func(self):
print('stuff')
sys.modules[__name__] = Manager()
>>> module.func
<func>
>>> module.x
3
>>> module.Manager
AttributeError