深入理解 Python 类和对象(4) - 类变量和实例变量

2018-11-30  本文已影响9人  DejavuMoments
class A:
    # aa 为类变量
    aa = 99

    # 定义初始化函数
    def __init__(self, x, y):
        # x,y 实例变量
        self.x = x
        self.y = y

a = A(1,2)

# 这里修改的是类的属性
A.aa = 11

# 在这里会在当前对象上新建 aa 属性,并放到实例 a 中的属性值当中去
a.aa = 22

# a.aa 会先查找对象本身的 aa 属性,找到则返回其值,否则向上在类中查找类变量
print(a.x, a.y, a.aa) 
print(A.aa)

直接修改类变量

在实例中修改类变量,只会影响当前实例。

上一篇 下一篇

猜你喜欢

热点阅读