python

超轻量级php框架startmvc

Python @property使用方法解析

更新时间:2020-07-31 01:00:01 作者:startmvc
1.作用将类方法转换为类属性,可以用.直接获取属性值或者对属性进行赋值2.实现方式使用p

1. 作用

将类方法转换为类属性,可以用 . 直接获取属性值或者对属性进行赋值

2.实现方式

使用property类来实现,也可以使用property装饰器实现,二者本质是一样的。多数情况下用装饰器实现。


class Student(object):
 @property
 def score(self):
 return self._score
 @score.setter
 def score(self, value):
 if not isinstance(value ,int):
 raise ValueError('分数必须是整数')
 if value <0 or value>100:
 raise ValueError('分数必须0-100之间')
 self._score = value
student = Student()student.score = 65print(student.score)65

score()方法上增加@property装饰器,等同于score= property(fget=score),将score赋值为property的实例。

所以,被装饰后的score,已经不是这个实例方法score了,而是property的实例score。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

python @property 方法