Python 内建函数 - property(fget=None, fset=None, fdel=None, doc=None)
- 函数功能
- 参数说明
- 用法
- 版本变更
函数功能
返回一个property属性
参数说明
- fget是一个用来获取属性值的函数;
- fset是一个用来设置属性值的函数;
- fdel是一个用来删除某个属性值的函数
- doc为属性创建一个文档字符串
用法
典型用法是定义一个属性x的管理:
class C:def __init__(self):self._x = Nonedef getx(self):return self._xdef setx(self, value):self._x = valuedef delx(self):del self._xx = property(getx, setx, delx, "I'm the 'x' property.")
如果c是C的实例,c.x将调用getter;c.x = value调用setter;del c.x调用deleter。
如果给定,doc作为property属性的文档字符串。否则,property将拷贝fget的文档字符串(如果存在的话)。这使得用property()作为[装饰器][1]快速创建只读的属性成为可能:
class Parrot:def __init__(self):self._voltage = 100000@propertydef voltage(self):"""Get the current voltage."""return self._voltage
@property装饰器,为只读属性,用同样的命名把voltage()方法转变为一个“getter”,并且将voltage的文档字符串设置为“Get the current voltage.”。
一个property对象有getter、setter和deleter方法可用于装饰器,其用相应的访问器函数创建property副本,并对被装饰的对象进行设置,可以用以下实例解释:
class C:def __init__(self):self._x = None@propertydef x(self):"""I'm the 'x' property."""return self._x@x.setterdef x(self, value):self._x = value@x.deleterdef x(self):del self._x
这段代码与第一个实例等价,但需要确保给出的附加函数与原property对象命名相同 (本实例中命名为x )。
返回的property对象也有fget、fset和fdel属性与构造器参数相对应。
版本变更
version 3.5变更: 现在property对象的文档字符串可写入了。
Python 内建函数 - property(fget=None, fset=None, fdel=None, doc=None)相关推荐
- Python标准库:内置函数property(fget=None, fset=None, fdel=None, doc=None)
本函数是设置类成员的属性.参数fget是获取类成员的属性值:参数fset是设置类成员的属性值:fdel是删除类成员:参数doc是设置属性的文档字符串.通过这个函数的方式,可以实现类成员变量隐藏的方式, ...
- python fd函数_Python:将属性及其函数(fget、fset、fdel)从一个类复制到另一个类...
您只需将property对象本身复制到新类中.它将保存对getter.setter和deleter函数的引用,不需要跨这些函数进行复制.在 对于新样式的类,您的代码无法工作:您不能将分配给class_ ...
- Python使用property函数定义属性访问方法如果不定义fget会怎么样?
我们知道Python使用property函数定义属性访问方法时的语法如下: 实例属性=property(fget=None, fset=None, fdel=None, doc=None) 而是要@p ...
- python中property函数_python 邮件表格Python中property函数用法实例分析
本文实例讲述了Python中property函数用法.分享给大家供大家参考,具体如下: 通常我们在访问和赋值属性的时候,都是在直接和类(实例的)的__dict__打交道,或者跟数据描述符等在打交道.但 ...
- python中property干什么用的?
先来段官方文档压压惊.. property(fget=None, fset=None, fdel=None, doc=None) Return a property attribute. fget i ...
- python内建函数(不完全)
各位还是参考官方文档吧,我这些是自己感觉重要和常用的 abs() all(iterable) 如果迭代序列中所有的元素都为真,或者迭代序列为空的时候返回True.等价于: def all(iterab ...
- python中property函数_Python中的property()函数
property() 函数的作用是在新式类中返回属性值 1.语法: class property([fget[, fset[, fdel[, doc]]]]) 2.参数: fget -- 获取属性值的 ...
- python 中 property 属性的讲解及应用
Python中property属性的功能是:property属性内部进行一系列的逻辑计算,最终将计算结果返回 property属性的有两种方式: 装饰器 即:在方法上应用装饰器 类属性 即:在类中定义 ...
- python中property方法有用_python中@property和property函数常见使用方法示例
本文实例讲述了python中@property和property函数常见使用方法.分享给大家供大家参考,具体如下: 1.基本的@property使用,可以把函数当做属性用 class Person(o ...
最新文章
- 3D 可视化,卷积、池化清清楚楚!网友:终于能看懂神经网络到底在干啥了......
- “比特币耶稣”Roger Ver:比特币现金分叉没有技术论据支持
- 【Java 并发编程】线程池机制 ( ThreadPoolExecutor 线程池构造参数分析 | 核心线程数 | 最大线程数 | 非核心线程存活时间 | 任务阻塞队列 )
- 【消息中间件】浅谈中间件优缺RabbitMQ基本使用
- 浏览器解析JavaScript原理
- Spring的AOP-底层原理
- opencv 边缘平滑_基于OpenCV的车道检测实现(一)
- HashMap 排序
- bash 字符串处理(转)
- hdu 5441 Travel (2015长春网赛)
- Java中的管程Monitor
- Nexus3 私服搭建和配置
- 集中趋势度量Measures of Central Tendency
- java freemarker jxl excel_freemarker导出定制excel
- web如何加入视频?video
- narwal机器人_Narwal云鲸智能扫拖机器人,值得托付的家庭卫生管家
- C语言实现简单的航空订票、退票系统
- 如何利用新闻营销提高商品成交率?
- VUE常用指令v-xxx
- Sun正式启动Orbit:openlaszlo的JavaME运行时目标
热门文章
- 【Android FileProvider】Couldn‘t find meta-data for provider with authority com.xxx.xxx.provider
- 2022年武汉市企业入规奖励补贴政策以及申报条件汇总
- 2014-03-29.阿里实习生招聘笔试题目
- 浮钓鲢鳙调漂和线组图解与饵料分析(转载)
- TCP SYN扫描分析探密
- Oracle PGA内存管理 PGA Memory Management
- 霸王龙只出剪刀,哆啦A梦只出拳头
- spc,spd,spa
- JSP基于网络超市商品销售管理系统的设计与实现(源代码+论文)
- 基于JAVA企业公司网站系统设计与实现 开题报告