Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将一个类的变量与另一个类的变量进行更改_Python - Fatal编程技术网

Python 将一个类的变量与另一个类的变量进行更改

Python 将一个类的变量与另一个类的变量进行更改,python,Python,我试图在没有继承的情况下,将一个类中的变量与另一个类中的变量进行更改 我怎么做呢 class ClassA: def __init__(self): self.modifier = _ClassB() self.var_a = 5 class _ClassB: def change_var_a(self): # change var_a = 7 a = ClassA() a.modifier.change_var_a() pr

我试图在没有继承的情况下,将一个类中的变量与另一个类中的变量进行更改

我怎么做呢

class ClassA:
    def __init__(self):
        self.modifier = _ClassB()
        self.var_a = 5


class _ClassB:
    def change_var_a(self):
        # change var_a = 7

a = ClassA()
a.modifier.change_var_a()
print(a.var_a)

您需要修改对实例的引用:

class ClassA:
    def __init__(self):
        self.modifier = _ClassB(parent=self)
        self.var_a = 5


class _ClassB:
    def __init__(self, parent: ClassA):
        self.parent = parent

    def change_var_a(self):
        self.parent.var_a = 10


a = ClassA()
a.modifier.change_var_a()
print(a.var_a)

正是我所需要的,非常感谢!