不懂setter
这个setter老师讲的突如其来,完全没搞懂有什么用,意义何在。姑且整理一下:
代码片段①:
@property
def age(self):
return self.__age
代码片段②:
@age.setter
def age(self,value):
………………
问题一:代码①存在的意义何在?不能和②合并为一个方法吗?
问题二:property里难道都是写返回该值吗?实际运用的时候如果我就是没法在这里面返回该值,那我能在property的片段里写什么?
12
收起
正在回答
5回答
同学,你好。
1、当属性设置为私有属性时,在外部不可以直接修改,因此可以同时使用@property和@xxx.setter,从而可以修改私有属性的值。@xxx.setter装饰器允许对已用@property装饰的属性赋值
2、片断①中的return用于返回修改后的self.__age
3、self.__age=age表示在调用该方法时给self.__age赋值
4、若只使用@property,表示可以使方法以属性的方式调用。 对应的方法中可以写任意代码
如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
1.Python零基础入门
- 参与学习 人
- 提交作业 2727 份
- 解答问题 8160 个
想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星