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编程中的运用实例
Jun 26 Python
python实现简单爬虫功能的示例
Oct 24 Python
flask + pymysql操作Mysql数据库的实例
Nov 13 Python
windows10下python3.5 pip3安装图文教程
Apr 02 Python
Python数据结构之哈夫曼树定义与使用方法示例
Apr 22 Python
Python使用paramiko操作linux的方法讲解
Feb 25 Python
python启动应用程序和终止应用程序的方法
Jun 28 Python
Django RBAC权限管理设计过程详解
Aug 06 Python
python实现横向拼接图片
Mar 23 Python
Python3.7下安装pyqt5的方法步骤(图文)
May 12 Python
使用tensorflow根据输入更改tensor shape
Jun 23 Python
Python爬虫防封ip的一些技巧
Aug 06 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
使用 eAccelerator加速PHP代码的方法
2007/09/30 PHP
php实现文件下载简单示例(代码实现文件下载)
2014/03/10 PHP
简单了解将WordPress中的工具栏移到底部的小技巧
2015/12/31 PHP
PHP中类属性与类静态变量的访问方法示例
2016/07/13 PHP
php的laravel框架快速集成微信登录的方法
2016/12/12 PHP
Laravel学习教程之路由模块
2017/08/18 PHP
jQuery EasyUI API 中文文档 - TimeSpinner时间微调器
2011/10/23 Javascript
jQuery实现可拖动的浮动层完整代码
2013/05/27 Javascript
JavaScript实现简单图片滚动附源码下载
2014/06/17 Javascript
JavaScript在Android的WebView中parseInt函数转换不正确问题解决方法
2015/04/25 Javascript
谈谈JavaScript异步函数发展历程
2015/09/29 Javascript
jQuery实现非常实用漂亮的select下拉菜单选择效果
2015/11/06 Javascript
JS封装cookie操作函数实例(设置、读取、删除)
2015/11/17 Javascript
利用Jquery队列实现根据输入数量显示的动画
2016/09/01 Javascript
js实现非常棒的弹出div
2016/10/06 Javascript
微信小程序page的生命周期和音频播放及监听实例详解
2017/04/07 Javascript
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
2017/08/16 Javascript
jquery如何实现点击空白处隐藏元素
2017/12/05 jQuery
vue cli webpack中使用sass的方法
2018/02/24 Javascript
node.js命令行教程图文详解
2019/05/27 Javascript
使用原生javascript开发计算器实例代码
2021/02/21 Javascript
[03:31]DOTA2英雄基础教程 大地之灵
2013/12/17 DOTA
python基础教程之基本内置数据类型介绍
2014/02/20 Python
Python3实现的回文数判断及罗马数字转整数算法示例
2019/03/27 Python
利用django model save方法对未更改的字段依然进行了保存
2020/03/28 Python
html5 datalist 选中option选项后的触发事件
2020/03/05 HTML / CSS
伦敦最著名的老字号百货公司:Selfridges(塞尔福里奇百货)
2016/07/25 全球购物
专注澳大利亚特产和新西兰特产的澳洲中文网:0061澳洲制造
2019/03/24 全球购物
全球精选男装和家居用品:Article
2020/04/13 全球购物
小学教师管理制度
2014/01/18 职场文书
乌鸦喝水教学反思
2014/02/07 职场文书
小学生作文评语大全
2014/04/21 职场文书
老干部工作先进集体事迹材料
2014/05/21 职场文书
2014年助理工程师工作总结
2014/11/14 职场文书
iPhone13 Pro外观确定,升级4800万镜头,4月20日发新品
2021/04/15 数码科技
vue3中provide && inject的使用
2021/07/01 Vue.js