class Foo: def __init__(self,key,hope_type): self.key=key self.hope_type=hope_type def __get__(self, instance, owner): print(‘输出get‘) return instance.__dict__[self.key] def __delete__(self, instance): print(‘输出delete‘) instance.__dict__.pop(self.key) def __set__(self, instance, value): if not isinstance(value,self.hope_type): raise TypeError(‘您输入的类型是%s‘%self.hope_type) instance.__dict__[self.key]=valueclass Test: name=Foo(‘name‘,str) age=Foo(‘age‘,int) def __init__(self,name,age,salary): self.name=name self.age=age self.salary=salaryf=Test(‘alex‘,‘18‘,200)