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实现udp数据报传输的方法
Sep 26 Python
Python原始字符串(raw strings)用法实例
Oct 13 Python
python读取word文档的方法
May 09 Python
python对数组进行反转的方法
May 20 Python
Python实现简单HTML表格解析的方法
Jun 15 Python
详解python的webrtc库实现语音端点检测
May 31 Python
基于python实现KNN分类算法
Apr 23 Python
使用python搭建服务器并实现Android端与之通信的方法
Jun 28 Python
详解如何用python实现一个简单下载器的服务端和客户端
Oct 28 Python
30行Python代码实现高分辨率图像导航的方法
May 22 Python
python脚本使用阿里云slb对恶意攻击进行封堵的实现
Feb 04 Python
Python+Matplotlib+LaTeX玩转数学公式
Feb 24 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
深入for,while,foreach遍历时间比较的详解
2013/06/08 PHP
深入PHP数据加密详解
2013/06/18 PHP
单点登录 Ucenter示例分析
2013/10/29 PHP
php中的动态调用实例分析
2015/01/07 PHP
thinkphp3.2实现在线留言提交验证码功能
2017/07/19 PHP
laravel框架学习笔记之组件化开发实现方法
2020/02/01 PHP
代码精简的可以实现元素圆角的js函数
2007/07/21 Javascript
file模式访问网页时iframe高度自适应解决方案
2013/01/16 Javascript
简单常用的幻灯片播放实现代码
2013/09/25 Javascript
动态载入js提高网页打开速度的方法
2014/07/04 Javascript
JS控制表格实现一条光线流动分割行的方法
2015/03/09 Javascript
jQuery form插件之ajaxForm()和ajaxSubmit()的可选参数项对象
2016/01/23 Javascript
JavaScript每天必学之基础知识
2016/09/17 Javascript
jquery css实现邮箱自动补全
2016/11/14 Javascript
使用ionic切换页面卡顿的解决方法
2016/12/16 Javascript
简单实现jQuery级联菜单
2017/01/09 Javascript
vue-cli webpack 开发环境跨域详解
2017/05/18 Javascript
详谈表单格式化插件jquery.serializeJSON
2017/06/23 jQuery
jQuery实现获取form表单内容及绑定数据到form表单操作分析
2018/07/03 jQuery
React学习之JSX与react事件实例分析
2020/01/06 Javascript
Vue两种组件类型:递归组件和动态组件的用法
2020/08/06 Javascript
vue项目接口域名动态获取操作
2020/08/13 Javascript
Nuxt的路由动画效果案例
2020/11/06 Javascript
haskell实现多线程服务器实例代码
2013/11/26 Python
Python中正则表达式的详细教程
2015/04/30 Python
浅谈python中np.array的shape( ,)与( ,1)的区别
2018/06/04 Python
解决python写入mysql中datetime类型遇到的问题
2018/06/21 Python
django+tornado实现实时查看远程日志的方法
2019/08/12 Python
Win10下配置tensorflow-gpu的详细教程(无VS2015/2017)
2020/07/14 Python
python爬虫中url管理器去重操作实例
2020/11/30 Python
开学典礼决心书
2014/03/11 职场文书
学生保证书范文
2014/04/28 职场文书
孝敬父母的演讲稿
2014/05/14 职场文书
学生打架检讨书
2014/10/20 职场文书
婚宴新娘致辞
2015/07/28 职场文书
毕业生就业推荐表自我鉴定
2019/06/20 职场文书