标签:get IV 区别 __init__ str init 执行 %s 分析
class People: def __init__(self, name): self.__name = name @property def name(self): print(‘welcome %s ‘ % self.__name) @name.getter def name(self): print(‘>>>>:‘,self.__name) @name.setter def name(self,val): if not isinstance(val,str): print(‘名字必须是字符串‘) return self.__name = val @name.deleter def name(self): print(‘deleter‘) print(‘不允许删除‘) p = People(‘alex‘) p.name del p.name p.name=‘zhang‘ p.name
运行结果:
>>>>: alex
deleter
不允许删除
>>>>: zhang
分析总结:property 它把函数属性编程数据属性使用。例如p.name就是用了getter。 del p.name用的是deleter。p.name=‘zhang‘用的是setter
标签:get IV 区别 __init__ str init 执行 %s 分析
原文地址:https://www.cnblogs.com/z18271397173/p/9130997.html