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中的cookielib模拟登录网站
Apr 09 Python
python实现聚类算法原理
Feb 12 Python
Python实现抓取HTML网页并以PDF文件形式保存的方法
May 08 Python
python 将有序数组转换为二叉树的方法
Mar 26 Python
Python调用Windows命令打印文件
Feb 07 Python
python字符串下标与切片及使用方法
Feb 13 Python
pytorch实现保证每次运行使用的随机数都相同
Feb 20 Python
python等待10秒执行下一命令的方法
Jul 19 Python
Python连接mysql方法及常用参数
Sep 01 Python
属性与 @property 方法让你的python更高效
Sep 21 Python
详解Python中第三方库Faker
Sep 25 Python
Python用access判断文件是否被占用的实例方法
Dec 17 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
用文本文件制作留言板提示(下)
2006/10/09 PHP
PHP 日志缩略名的创建函数代码
2010/05/26 PHP
PHP会话控制:Session与Cookie详解
2014/09/27 PHP
PHP使用内置dir类实现目录遍历删除
2015/03/31 PHP
使用SMB共享来绕过php远程文件包含的限制执行RFI的利用
2019/05/31 PHP
解决windows上php xdebug 无法调试的问题
2020/02/19 PHP
PhpStorm2020.1 安装 debug - Postman 调用的详细教程
2020/08/17 PHP
jQuery数组处理方法汇总
2011/06/20 Javascript
js中eval()函数和trim()去掉字符串左右空格应用
2013/02/02 Javascript
Jquery实现点击切换图片并隐藏显示内容(2种方法实现)
2013/04/11 Javascript
JS获取图片实际宽高及根据图片大小进行自适应
2013/08/11 Javascript
JQuery中$.ajax()方法参数详解及应用
2013/12/12 Javascript
jQuery焦点图切换简易插件制作过程全纪录
2014/08/27 Javascript
node.js中的buffer.fill方法使用说明
2014/12/14 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
jQuery EasyUI学习教程之datagrid点击列表头排序
2016/07/09 Javascript
Vue在页面右上角实现可悬浮/隐藏的系统菜单
2018/05/04 Javascript
Vue动态加载异步组件的方法
2018/11/21 Javascript
微信小程序蓝牙连接小票打印机实例代码详解
2019/06/03 Javascript
jquery-ui 进度条功能示例【测试可用】
2019/07/25 jQuery
JavaScript实现的3D旋转魔方动画效果实例代码
2019/07/31 Javascript
layui的layedit富文本赋值方法
2019/09/18 Javascript
python服务器与android客户端socket通信实例
2014/11/12 Python
python Pygame的具体使用讲解
2017/11/03 Python
Python实现的tcp端口检测操作示例
2018/07/24 Python
Python 加密与解密小结
2018/12/06 Python
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
Kidsroom台湾:来自德国的婴儿用品
2017/12/11 全球购物
什么是View State?
2013/01/27 面试题
公司市场部岗位职责
2013/12/02 职场文书
传播学专业毕业生自荐书
2014/07/01 职场文书
乡镇防汛工作汇报
2014/10/28 职场文书
用Python的绘图库(matplotlib)绘制小波能量谱
2021/04/17 Python
python实现MD5进行文件去重的示例代码
2021/07/09 Python
sql server 累计求和实现代码
2022/02/28 SQL Server
vue特效之翻牌动画
2022/04/20 Vue.js