之前介绍过python中会使用setattr函数给定义对象的属性赋值(https://www.py.cn/jishu/jichu/22304.html),用于设置属性值。但是这样无法进行一些条件和规则的过滤,因此python类定义了 getter、setter 等访问器方法对赋值的变量进行检查,而python可以通过property函数,来简化访问器方法的使用,并定义属性。
1、property() 函数
如果为 python类定义了getter、setter等访问器方法,则可使用 property() 函数将它们定义成属性(相当于实例变量);
即property() 函数的功能就是定义属性。
2、函数原型
class property(fget=None, fset=None, fdel=None, doc=None)
3、语法
class property ( [fget [, fset [, fdel [, doc] ] ] ] )
4、参数
fget:获取属性值的函数
fset:设置属性值的函数
fdel:删除属性值函数
doc:属性描述信息
5、使用实例
class Property(): # 这个函数也不是固定的可以更改 def fget(self): return self._name def fset(self, name): self._name = name.upper() def fdel(self): # 函数定义的参数不是固定的可以更改 self._name = "NoName" name = property(fget, fset, fdel, "对name进行下操作") pl = Property() pl.name = "abcd" # 这个整体的函数作用是让这个里边的字母变成大写 print(pl.name)
以上就是python中property函数的介绍,希望能对你有所帮助哦~
转载自:python学习网 https://www.py.cn/
发表评论
还没有评论,快来抢沙发吧!