Python 今天抽空学习了@Property
2024-09-05 03:35:47
1.@Property有啥用
1) @property使方法像属性一样调用
@property可以把一个实例方法变成其同名属性,以支持.号访问,它亦可标记设置限制,加以规范
2) @property
成为属性函数,可以对属性赋值时做必要的检查,比如在setter方法里加过滤判断条件。
3) 代码显得相对简洁一些, 相比自定义的get和set方法,property保证了代码的短小精悍,对私有属性的操作代码格式化模块化。
2. @Property原型
property(fget=None, fset=None, fdel=None, doc=None)
3. 用例子来理解:为什么要用@Property
改成下面这样
Python支持高阶函数,可以用装饰器函数把 get/set 方法“装饰”成属性调用:
第一个sala(self)是get方法,用@property装饰,第二个sala(self, sala)是set方法,用@sala.setter装饰,@sala.setter是前一个@property装饰后的副产品。
现在,就可以像使用属性一样设置sala了
4. 用例子来理解:@Property对是私有属性进行操作
看下面
参考:
https://www.cnblogs.com/Lambda721/p/6132206.html
https://blog.csdn.net/qq_26442553/article/details/82222572
http://www.cnblogs.com/crwy/p/6852347.html
https://www.jb51.net/article/134148.htm
最新文章
- 说说Spring中的WebDataBinder
- IE下Array.prototype.slice.call(params,0)
- Nginx的配置中与流量分发相关的配置规范:
- python爬取并计算成绩
- light oj 1068 - Investigation 数位DP
- LeetCode: 3SumClosest
- Servlet &; JSP - Cookie
- Android Toast 总结(五种用法)
- Guava的一些总结
- 用户登陆,退出等基本Action
- JQuery hover toggle事件使用
- MVC导入命名空间
- github下载和上传项目
- H5富文本编辑器之初始化用于编辑的DOM-遁地龙卷风
- 关于resharper激活
- angular部署到iis出现404解决方案
- Linux背背背(5)
- 数据共享Manager
- 【洛谷p1605】迷宫
- delphi 中的浮点数 (转载)