本文共 567 字,大约阅读时间需要 1 分钟。
通过一张图,让读者理解在对象在查找一个属性的顺序过程
代码如下
class IntField: def __get__(self, instance, owner): pass def __set__(self, instance, value): self.value = value pass def __delete__(self, instance): passclass NonIntField: def __get__(self, instance, owner): passclass User: age = IntField(23) age = NonIntField(23) age = 20 def __init__(self, age): self.age = age def __getattr__(self, item): passif __name__ == '__main__': user = User(23) print(user.age)
上面的代码未必真的能运行,是将所有的情况都列出来放在了一起,用于对比.
公众号
转载地址:http://erbmz.baihongyu.com/