本文介绍python的property装饰器
property装饰器可以将一个类的方法变为一个类的属性,从而可以直接通过点的方法来改变这个属性的值,不需要调用getter和setter函数,此方法基于object
新类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| class signal_generator(object): def __init__(self): self._center_frequency=None @property def center_frequency(self): return self._center_frequency @center_frequency.setter def center_frequency(self, value): print 'set center_frequency' self._center_frequency = value @center_frequency.getter def center_frequency(self): print 'get center_frequency' return self._center_frequency a = signal_generator() print a.center_frequency a.center_frequency = 10 a.center_frequency += 10 print a.center_frequency
|