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 相关文章推荐
pyside写ui界面入门示例
Jan 22 Python
python使用Berkeley DB数据库实例
Sep 26 Python
Python语言的变量认识及操作方法
Feb 11 Python
python中字符串的操作方法大全
Jun 03 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
Oct 30 Python
解决Django中多条件查询的问题
Jul 18 Python
Python笔记之工厂模式
Nov 20 Python
Python 模拟生成动态产生验证码图片的方法
Feb 01 Python
pymysql 插入数据 转义处理方式
Mar 02 Python
Python OpenCV读取中文路径图像的方法
Jul 02 Python
带你学习Python如何实现回归树模型
Jul 16 Python
pytest进阶教程之fixture函数详解
Mar 29 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
初级的用php写的采集程序
2007/03/16 PHP
PHP开发Apache服务器配置
2015/07/15 PHP
PHP实现基于文本的摩斯电码生成器
2016/01/11 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
2017/07/26 PHP
详细解读php的命名空间(一)
2018/02/21 PHP
javascript eval函数深入认识
2009/02/21 Javascript
js中的异常处理try...catch使用介绍
2013/09/21 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
jquery实现公告翻滚效果
2015/02/27 Javascript
在JavaScript中处理字符串之link()方法的使用
2015/06/08 Javascript
原生js与jQuery实现简单的tab切换特效对比
2015/07/30 Javascript
JS实现下拉菜单赋值到文本框的方法
2015/08/18 Javascript
使用JavaScript和CSS实现文本隔行换色的方法
2015/11/04 Javascript
利用jQuery设计一个简单的web音乐播放器的实例分享
2016/03/08 Javascript
BootStrap Validator 版本差异问题导致的submitHandler失效问题的解决方法
2016/12/01 Javascript
原生js实现淘宝购物车功能
2020/06/23 Javascript
微信小程序分页加载的实例代码
2017/07/11 Javascript
JS库之Waypoints的用法详解
2017/09/13 Javascript
Node.js微信 access_token ( jsapi_ticket ) 存取与刷新的示例
2017/09/30 Javascript
微信小程序 input输入及动态设置按钮的实现
2017/10/27 Javascript
JS点击动态添加标签、删除指定标签的代码
2018/04/18 Javascript
解析Json字符串的三种方法日常常用
2018/05/02 Javascript
Vue组件中prop属性使用说明实例代码详解
2018/05/31 Javascript
vue组件之间数据传递的方法实例分析
2019/02/12 Javascript
[01:13]2015国际邀请赛线下观战现场
2015/08/08 DOTA
python遍历文件夹找出文件夹后缀为py的文件方法
2018/10/21 Python
Python2与Python3的区别点整理
2019/12/12 Python
使用pytorch和torchtext进行文本分类的实例
2020/01/08 Python
CSS3对背景图片的裁剪及尺寸和位置的设定方法
2016/03/07 HTML / CSS
css和css3弹性盒模型实现元素宽度(高度)自适应
2019/05/15 HTML / CSS
自我评价范文点评
2013/12/04 职场文书
六十岁生日答谢词
2014/01/10 职场文书
初一学生期末评语
2014/04/24 职场文书
服务明星事迹材料
2014/12/29 职场文书
感谢信模板大全
2015/01/23 职场文书
Spring boot admin 服务监控利器详解
2022/08/05 Java/Android