如何在同一类的多个对象之间进行通信

2024-05-08 01:54:22 发布

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

基本上我有一个class对象(比如说class A),它包含一些分配给变量的值(比如class的属性self.use)。有多个其他类(B,C…)和函数创建该类A的实例。我想在类A的所有对象之间共享self.use(可以由任何模块、任何函数创建)

例如:

class Core(object):
    def __init__(self):
        self.use = True
        if self.use:
            main()

    def main(self):
        # doing some stuff

上面的类有一个属性self.use,根据self.use的值调用main函数。现在我有了其他使用核心类的模块:

class Helper(object):
    def func1(self):
        self.core = Core()

    def func2(self):
        self.core = Core()

在上面的助手类中,我创建了核心类的两个对象。如果self.use只创建一次,则无论任何函数创建了多少个对象,我想要的是什么

请不要告诉我只创建一次核心对象,而不是从每个函数创建。目前有很多这样的模块和功能无法更改


Tags: 模块对象实例函数coreself核心属性