如何在python中获取另一个类中一个类的一个变量的引用?

时间:2016-10-12 06:16:38

标签: python class reference

我有一个C1类,另一个C2类将C1的一个实例作为变量。如果我想在C2中获取C1的变量,我必须使用self.c1.variable。如何在C2中获得C1变量的引用,以便我可以直接得到它?

class C1():
    def __init__(self,a):
        self.variable = a

class C2():
    def __init__(self, c1):
        self.c1 = c1

    def print_variable(self):
        print self.c1.variable


c1 = C1(1)
c2 = C2(c1)
c2.print_variable()

1 个答案:

答案 0 :(得分:0)

您可以使用@property装饰器来实现:

class C2():
    def __init__(self, c1):
        self.c1 = c1

    @property
    def variable(self):
        return self.c1.variable

如果您想修改C2实例中的variable

    @variable.setter
    def variable(self, value):
        self.c1.variable = value