本文实例讲述了python3.6中@property装饰器的使用方法。分享给大家供大家参考,具体如下:
1、@property装饰器的使用场景简单记录如下:
- 负责把一个方法变成属性调用;
-
可以把一个getter方法变成属性,
@property
本身又创建了另一个装饰器@score.setter
,负责把一个setter方法变成属性赋值; - 只定义getter方法,不定义setter方法就是一个只读属性
2、通过一个例子来加深对@property装饰器的理解:利用@property给一个Screen对象加上width和height属性,以及一个只读属性resolution。
代码实现如下:
class Screen(object): @property def width(self): return self._width @width.setter def width(self,value): self._width = value @property def height(self): return self._height @height.setter def height(self,values): self._height = values @property def resolution(self): return self._width * self._height s = Screen() s.width = 1024 s.height = 768 print('resolution = ',s.resolution)
运行结果:
resolution = 786432
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python面向对象程序设计入门与进阶教程》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python编码操作技巧总结》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。