• 函数功能
  • 参数说明
  • 用法
  • 版本变更

函数功能

返回一个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)相关推荐

  1. Python标准库:内置函数property(fget=None, fset=None, fdel=None, doc=None)

    本函数是设置类成员的属性.参数fget是获取类成员的属性值:参数fset是设置类成员的属性值:fdel是删除类成员:参数doc是设置属性的文档字符串.通过这个函数的方式,可以实现类成员变量隐藏的方式, ...

  2. python fd函数_Python:将属性及其函数(fget、fset、fdel)从一个类复制到另一个类...

    您只需将property对象本身复制到新类中.它将保存对getter.setter和deleter函数的引用,不需要跨这些函数进行复制.在 对于新样式的类,您的代码无法工作:您不能将分配给class_ ...

  3. Python使用property函数定义属性访问方法如果不定义fget会怎么样?

    我们知道Python使用property函数定义属性访问方法时的语法如下: 实例属性=property(fget=None, fset=None, fdel=None, doc=None) 而是要@p ...

  4. python中property函数_python 邮件表格Python中property函数用法实例分析

    本文实例讲述了Python中property函数用法.分享给大家供大家参考,具体如下: 通常我们在访问和赋值属性的时候,都是在直接和类(实例的)的__dict__打交道,或者跟数据描述符等在打交道.但 ...

  5. python中property干什么用的?

    先来段官方文档压压惊.. property(fget=None, fset=None, fdel=None, doc=None) Return a property attribute. fget i ...

  6. python内建函数(不完全)

    各位还是参考官方文档吧,我这些是自己感觉重要和常用的 abs() all(iterable) 如果迭代序列中所有的元素都为真,或者迭代序列为空的时候返回True.等价于: def all(iterab ...

  7. python中property函数_Python中的property()函数

    property() 函数的作用是在新式类中返回属性值 1.语法: class property([fget[, fset[, fdel[, doc]]]]) 2.参数: fget -- 获取属性值的 ...

  8. python 中 property 属性的讲解及应用

    Python中property属性的功能是:property属性内部进行一系列的逻辑计算,最终将计算结果返回 property属性的有两种方式: 装饰器 即:在方法上应用装饰器 类属性 即:在类中定义 ...

  9. python中property方法有用_python中@property和property函数常见使用方法示例

    本文实例讲述了python中@property和property函数常见使用方法.分享给大家供大家参考,具体如下: 1.基本的@property使用,可以把函数当做属性用 class Person(o ...

最新文章

  1. 3D 可视化,卷积、池化清清楚楚!网友:终于能看懂神经网络到底在干啥了......
  2. “比特币耶稣”Roger Ver:比特币现金分叉没有技术论据支持
  3. 【Java 并发编程】线程池机制 ( ThreadPoolExecutor 线程池构造参数分析 | 核心线程数 | 最大线程数 | 非核心线程存活时间 | 任务阻塞队列 )
  4. 【消息中间件】浅谈中间件优缺RabbitMQ基本使用
  5. 浏览器解析JavaScript原理
  6. Spring的AOP-底层原理
  7. opencv 边缘平滑_基于OpenCV的车道检测实现(一)
  8. HashMap 排序
  9. bash 字符串处理(转)
  10. hdu 5441 Travel (2015长春网赛)
  11. Java中的管程Monitor
  12. Nexus3 私服搭建和配置
  13. 集中趋势度量Measures of Central Tendency
  14. java freemarker jxl excel_freemarker导出定制excel
  15. web如何加入视频?video
  16. narwal机器人_Narwal云鲸智能扫拖机器人,值得托付的家庭卫生管家
  17. C语言实现简单的航空订票、退票系统
  18. 如何利用新闻营销提高商品成交率?
  19. VUE常用指令v-xxx
  20. Sun正式启动Orbit:openlaszlo的JavaME运行时目标

热门文章

  1. 【Android FileProvider】Couldn‘t find meta-data for provider with authority com.xxx.xxx.provider
  2. 2022年武汉市企业入规奖励补贴政策以及申报条件汇总
  3. 2014-03-29.阿里实习生招聘笔试题目
  4. 浮钓鲢鳙调漂和线组图解与饵料分析(转载)
  5. TCP SYN扫描分析探密
  6. Oracle PGA内存管理 PGA Memory Management
  7. 霸王龙只出剪刀,哆啦A梦只出拳头
  8. spc,spd,spa
  9. JSP基于网络超市商品销售管理系统的设计与实现(源代码+论文)
  10. 基于JAVA企业公司网站系统设计与实现 开题报告