class Foo: def __init__(self,key,expect_type): self.key=key self.expect_type=expect_type def __set__(self, instance, value): print('set方法') if not isinstance(value,self.expect_type): raise TypeError('错误') instance.__dict__[self.key]=value def __delete__(self, instance): print('delete方法') def __get__(self, instance, owner): print('get方法') # def __setattr__(self, key, value): # print(5) class Too: name=Foo('name',str) age=Foo('age',int) def __init__(self,name,age): self.name=name self.age=age t1=Too('林南',29) t1.name print(t1.__dict__)
转载于:https://www.cnblogs.com/jintian/p/10958652.html