class Test:
cls_a = 0
def __init__(self):
self.inst_a = 1
self.inst_b = 2
setattr(Test, 'cls_a', 3) # 覆盖已有的类属性
print(Test.cls_a)
setattr(Test, 'inst_a', 4)
print(Test.inst_a)
setattr(Test, 'not_exist', 5) # 设置类中不存在的值
print(Test.not_exist)
print(getattr(Test, 'not_exist'))
print(hasattr(Test, 'inst_b'))
print(hasattr(Test, 'not_ex'))
tt = Test()
print(hasattr(tt, 'inst_b')) # 实例对象才能找到成员变量
输出:
3
4
5
5
False
False
True