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 MySQL数据库连接池组件pymysqlpool详解
Jul 07 Python
Python实现图片转字符画的示例代码
Aug 21 Python
如何通过python画loss曲线的方法
Jun 26 Python
python 列表转为字典的两个小方法(小结)
Jun 28 Python
Django为窗体加上防机器人的验证码功能过程解析
Aug 14 Python
简单了解python数组的基本操作
Nov 26 Python
Python+numpy实现矩阵的行列扩展方式
Nov 29 Python
Python 实现向word(docx)中输出
Feb 13 Python
python opencv实现图片缺陷检测(讲解直方图以及相关系数对比法)
Apr 07 Python
如何用python处理excel表格
Jun 09 Python
Python爬虫如何破解JS加密的Cookie
Nov 19 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
php5中类的学习
2008/03/28 PHP
php实现xml转换数组的方法示例
2017/02/03 PHP
CLASS_CONFUSION JS混淆 全源码
2007/12/12 Javascript
Javascript 获取LI里的内容
2008/12/17 Javascript
基于jquery扩展漂亮的CheckBox(自己编写)
2013/11/19 Javascript
document节点对象的获取方式示例介绍
2013/12/24 Javascript
JavaScript中的原型prototype属性使用详解
2015/06/05 Javascript
js行号显示的文本框实现效果(兼容多种浏览器 )
2015/10/23 Javascript
js实现n秒倒计时后才可以点击的效果
2015/12/20 Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
2016/05/10 Javascript
微信小程序 在Chrome浏览器上运行以及WebStorm的使用
2016/09/27 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
分享5个顶级的JavaScript Ajax组件库
2018/09/16 Javascript
微信小程序下拉框功能的实例代码
2018/11/06 Javascript
监听element-ui table滚动事件的方法
2019/03/26 Javascript
「中高级前端面试」JavaScript手写代码无敌秘籍(推荐)
2019/04/08 Javascript
Vue CLI3基础学习之pages构建多页应用
2019/06/02 Javascript
小程序瀑布流组件实现翻页与图片懒加载
2020/05/19 Javascript
[03:36]2014DOTA2 TI小组赛综述 八强诞生进军钥匙球馆
2014/07/15 DOTA
Python多线程编程(三):threading.Thread类的重要函数和方法
2015/04/05 Python
Python3里的super()和__class__使用介绍
2015/04/23 Python
python实现类的静态变量用法实例
2015/05/08 Python
基于python绘制科赫雪花
2018/06/22 Python
关于python写入文件自动换行的问题
2018/06/23 Python
与Django结合利用模型对上传图片预测的实例详解
2019/08/07 Python
python tkinter组件摆放方式详解
2019/09/16 Python
python3安装OCR识别库tesserocr过程图解
2020/04/02 Python
python爬虫分布式获取数据的实例方法
2020/11/26 Python
学习型党组织心得体会
2014/09/12 职场文书
协议书范文
2015/01/27 职场文书
工艺技术员岗位职责
2015/02/04 职场文书
停电放假通知
2015/04/14 职场文书
2015年大学班级工作总结
2015/04/28 职场文书
时尚女魔头观后感
2015/06/04 职场文书
2015年学校办公室主任工作总结
2015/07/20 职场文书
小学大队干部竞选稿
2015/11/20 职场文书