Python  __getattr__与__setattr__使用方法


Posted in Python onSeptember 06, 2008

比如下面的例子:

class Book(object):
    def __setattr__(self, name, value):
        if name == 'value':
            object.__setattr__(self, name, value - 100)
        else:
            object.__setattr__(self, name, value)
    def __getattr__(self, name):
        try:
            return object.__getattribute__(name)
        except:
            return name + ' is not found!'
    def __str__(self):
        return self.name + ' cost : ' + str(self.value)

c = Book()
c.name = 'Python'
c.value = 100
print c.name
print c.value
print c
print c.Type

上面的例子中,在赋值书的value属性时,偷偷的将value减去了100,呵。输出结果:

Python
0
Python cost : 0
Type is not found!
Python 相关文章推荐
Python如何import文件夹下的文件(实现方法)
Jan 24 Python
python之从文件读取数据到list的实例讲解
Apr 19 Python
使用python装饰器计算函数运行时间的实例
Apr 21 Python
padas 生成excel 增加sheet表的实例
Dec 11 Python
python 用for循环实现1~n求和的实例
Feb 01 Python
Python os.access()用法实例
Feb 18 Python
Python3分析处理声音数据的例子
Aug 27 Python
Python shelve模块实现解析
Aug 28 Python
keras自动编码器实现系列之卷积自动编码器操作
Jul 03 Python
基于Python实现2种反转链表方法代码实例
Jul 06 Python
python中plt.imshow与cv2.imshow显示颜色问题
Jul 16 Python
python中upper是做什么用的
Jul 20 Python
Python 深入理解yield
Sep 06 #Python
Python 初始化多维数组代码
Sep 06 #Python
Python enumerate遍历数组示例应用
Sep 06 #Python
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
Sep 06 #Python
Python httplib,smtplib使用方法
Sep 06 #Python
Python 命令行参数sys.argv
Sep 06 #Python
Python 时间处理datetime实例
Sep 06 #Python
You might like
dedecms系统常用术语汇总
2007/04/03 PHP
PHP图像处理之imagecreate、imagedestroy函数介绍
2014/11/19 PHP
IE和Firefox下javascript的兼容写法小结
2008/12/10 Javascript
JS自定义功能函数实现动态添加网址参数修改网址参数值
2013/08/02 Javascript
js获得地址栏?问号后参数的方法
2013/08/08 Javascript
javascript匿名函数应用示例介绍
2014/03/07 Javascript
Javascript前端UI框架Kit使用指南之Kitjs简介
2014/11/28 Javascript
JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)
2015/01/13 Javascript
移动设备web开发首选框架:zeptojs介绍
2015/01/29 Javascript
轻松实现JavaScript图片切换
2016/01/12 Javascript
jQuery解决浏览器兼容性问题案例分析
2016/04/15 Javascript
js自调用匿名函数的三种写法(推荐)
2016/08/19 Javascript
js 定位到某个锚点的方法
2016/11/19 Javascript
JavaScript字符串对象(string)基本用法示例
2017/01/18 Javascript
利用pm2部署多个node.js项目的配置教程
2017/10/22 Javascript
js根据json数据中的某一个属性来给数据分组的方法
2018/10/08 Javascript
AngularJS $http post 传递参数数据的方法
2018/10/09 Javascript
解决LayUI加上form.render()下拉框和单选以及复选框不出来的问题
2019/09/27 Javascript
Vue路由管理器Vue-router的使用方法详解
2020/02/05 Javascript
Javascript原生ajax请求代码实例
2020/02/20 Javascript
[58:09]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第三场 6.2
2018/06/03 DOTA
[02:36]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma 选手采访
2021/03/11 DOTA
Python远程桌面协议RDPY安装使用介绍
2015/04/15 Python
Python计算三维矢量幅度的方法
2015/06/15 Python
Python使用pymysql小技巧
2017/06/04 Python
Linux下python3.7.0安装教程
2018/07/30 Python
关于windows下Tensorflow和pytorch安装教程
2020/02/04 Python
python 读取二进制 显示图片案例
2020/04/24 Python
Python猫眼电影最近上映的电影票房信息
2020/09/18 Python
python 通过pip freeze、dowload打离线包及自动安装的过程详解(适用于保密的离线环境
2020/12/14 Python
详解CSS3中常用的样式【基本文本和字体样式】
2020/10/20 HTML / CSS
德国大型箱包和皮具商店:Koffer
2019/10/01 全球购物
Brasty罗马尼亚:购买手表、香水、化妆品、珠宝
2020/04/21 全球购物
C# Debug和Testing相关面试题
2015/10/25 面试题
学习心得体会
2019/06/20 职场文书
css3实现背景图片颜色修改的多种方式
2021/04/13 HTML / CSS