Python基础 | 魔术方法__getattr__()例子
定义一个 Counter 类,重写魔法方法,实现属性个数的统计。
提示:通过实例对象访问__dict__属性可以返回一个字典,字典的键为属性名,值为属性值。
class Counter:
def __getattr__(self,name):
if name == 'counter':
print("属性个数为%d个" % len(self.__dict__))
else:
super().__getattr__(name)#去上级找
c = Counter()
c.name = "Tom"
c.age = 12
c.sex = "男"
c.counter

浙公网安备 33010602011771号