Python Property属性的2种用法


Posted in Python onJune 21, 2015

假设定义了一个类:C,该类必须继承自object类,有一私有变量_x

class C:

 def __init__(self):
self.__x=None

1.现在介绍第一种使用属性的方法:

在该类中定义三个函数,分别用作赋值、取值和删除变量(此处表达也许不很清晰,请看示例)

 def getx(self):

return self.__x

 def setx(self,value):

self.__x=value

 def delx(self):

del self.__x

 x=property(getx,setx,delx,'')

property函数原型为property(fget=None,fset=None,fdel=None,doc=None),所以根据自己需要定义相应的函数即可。

现在这个类中的x属性便已经定义好了,我们可以先定义一个C的实例c=C(),然后赋值c.x=100,取值y=c.x,删除:del c.x。是不是很简单呢?请看第二种方法

2.下面看第二种方法(在2.6中新增)

首先定义一个类C:

class C:

 def __init__(self):
self.__x=None

下面就开始定义属性了

 @property

 def x(self):

return self.__x

 @x.setter

 def x(self,value):

self.__x=value

 @x.deleter

 def x(self):

del self.__x

 同一属性的三个函数名要相同哦。。
Python 相关文章推荐
python文件与目录操作实例详解
Feb 22 Python
python下如何查询CS反恐精英的服务器信息
Jan 17 Python
python3实现公众号每日定时发送日报和图片
Feb 24 Python
完美解决在oj中Python的循环输入问题
Jun 25 Python
Python零基础入门学习之输入与输出
Apr 03 Python
Python字符串内置函数功能与用法总结
Apr 16 Python
Django框架orM与自定义SQL语句混合事务控制操作
Jun 27 Python
python 随机森林算法及其优化详解
Jul 11 Python
使用Python自动生成HTML的方法示例
Aug 06 Python
centos7中安装python3.6.4的教程
Dec 11 Python
Python Flask上下文管理机制实例解析
Mar 16 Python
python实现b站直播自动发送弹幕功能
Feb 20 Python
Python中实现三目运算的方法
Jun 21 #Python
Python中有趣在__call__函数
Jun 21 #Python
Python的装饰器模式与面向切面编程详解
Jun 21 #Python
Python安装第三方库的3种方法
Jun 21 #Python
Python实现线程池代码分享
Jun 21 #Python
Python os模块学习笔记
Jun 21 #Python
Pthon批量处理将pdb文件生成dssp文件
Jun 21 #Python
You might like
六酷社区论坛HOME页清新格调免费版 下载
2007/03/07 PHP
PHP版自动生成文章摘要
2008/07/23 PHP
php preg_match_all结合str_replace替换内容中所有img
2008/10/11 PHP
php邮件发送,php发送邮件的类
2011/03/24 PHP
php中的mongodb select常用操作代码示例
2014/09/06 PHP
php数据结构之顺序链表与链式线性表示例
2018/01/22 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
Laravel 微信小程序后端搭建步骤详解
2019/11/26 PHP
jquery遍历筛选数组的几种方法和遍历解析json对象
2013/12/13 Javascript
JS动态显示表格上下frame的方法
2015/03/31 Javascript
简单纯js实现点击切换TAB标签实例
2015/08/23 Javascript
jquery实现可关闭的倒计时广告特效代码
2015/09/02 Javascript
深入学习AngularJS中数据的双向绑定机制
2016/03/04 Javascript
Web安全测试之XSS实例讲解
2016/08/15 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
2016/12/13 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
详解小程序如何动态绑定点击的执行方法
2019/11/26 Javascript
jquery实现上传文件进度条
2020/03/26 jQuery
了不起的11个JavaScript代码重构最佳实践小结
2021/01/11 Javascript
python相似模块用例
2016/03/04 Python
Python基于回溯法子集树模板解决m着色问题示例
2017/09/07 Python
详解Python nose单元测试框架的安装与使用
2017/12/20 Python
详解Python基础random模块随机数的生成
2019/03/23 Python
PyQt5 加载图片和文本文件的实例
2019/06/14 Python
python基于递归解决背包问题详解
2019/07/03 Python
python实现人像动漫化的示例代码
2020/05/17 Python
Python如何对齐字符串
2020/07/30 Python
python利用pytesseract 实现本地识别图片文字
2020/12/14 Python
HTML5 通信API 跨域门槛将不再高、数据推送也不再是梦
2013/04/25 HTML / CSS
马耳他航空公司官方网站:Air Malta
2019/05/15 全球购物
企业给企业的表扬信
2014/01/13 职场文书
研究生就业推荐表导师评语
2014/12/31 职场文书
学校社团活动总结
2015/05/07 职场文书
夏洛特的网观后感
2015/06/15 职场文书
聘任协议书(挂靠)
2015/09/21 职场文书
Opencv中cv2.floodFill算法的使用
2021/06/18 Python