Python进阶-----类的内置方法__getattribute__
__getattribute__ 方法功能:
1 调用属性会触发该功能,属性存在则会返回相应的值;
2 如果属性不存在则会抛出异常AttributeError,所以可以自定义异常信息
3 存在__getattr__,若有异常出现则会传递给__getattr__用来接收,执行操作
class Foo:def __init__(self,x):self.x=xdef __getattr__(self, item):print('执行的是我')# return self.__dict__[item]def __getattribute__(self, item): #调取属性无论是否存在均会触发它print('不管是否存在,我都会执行')raise AttributeError('哈哈') #其实就是python内部的处理方式 f1=Foo(10) f1.x f1.xxxxxx#当__getattribute__与__getattr__同时存在,只会执行__getattrbute__,除非__getattribute__在执行过程中抛出异常AttributeError
转载于:https://www.cnblogs.com/Meanwey/p/9788821.html
Python进阶-----类的内置方法__getattribute__相关推荐
- python 面向对象 类的内置方法
判断是不是类cls的对象 class A:passa = A() print(isinstance(a,A)) 判断类sub是不是super的子类 class A:passclass B(A):pas ...
- python 类的内置方法_Python 类的常用内置方法
类的内置方法(魔法方法): 凡是在类内部定义,以__开头__结尾的方法,都是类的内置方法,类的内置方法,会在满足某种条件下自动触发. 1.1__new__ __new__:在___init__触发前, ...
- python __repr__方法_第8.13节 Python类中内置方法__repr__详解
当我们在交互环境下输入对象时会直接显示对象的信息,交互环境下输入print(对象)或代码中print(对象)也会输出对象的信息,这些输出信息与两个内置方法:__str__方法和__repr__方法有关 ...
- 类的属性、类的方法、类的内置方法
类的属性 变量在类中称为类的属性,函数在类中称为类的方法,类的属性分为以下几种: (1) 公有属性:在类中和类外都能调用的属性,定义的时候与变量的定义一致,如 color = 'yellow' (2) ...
- 【python object类及其内置方法】
1. object类 object类所有类的父类,默认所有的类都继承至object类 当我们定义一个类,没有指定他的父类时,它默认就是继承了object类 例如 class Student:pass ...
- Python中常用的内置方法
Python中常用的内置方法: 比较大小.求和 如下所示: 代码块: #枚举:返回索引值和对应的value值for i,v in enumerate('westos'):print(i,v)#zips ...
- python中字典类型中的item是什么-python中 字典类型内置方法
python中 字典类型内置方法 一.字典(dict) 1·. 存多个值,但是每一个值都有一个key与之对应.列如存在值有姓名:jiayi.年龄:18.身高:173 2.定义方式 在{}内 ...
- python 类的内置方法_【转】[python] 类常用的内置方法
原文:http://xukaizijian.blog.163.com/blog/static/170433119201111894228877/ 内置方法 说明 __init__(self,...) ...
- python类的内置方法_python面向对象之类中的内置方法
__setattr__,__delattr__,__getattr__,__getattribute__以及标准类型的二次加工 __setattr__,__delattr__,__getattr__的 ...
- python面向对象 : 反射和内置方法
一. 反射 1. isinstance()和issubclass() isinstance( 对象名, 类名) : 判断对象所属关系,包括父类 (注:type(对象名) is 类名 : 判断对象所属 ...
最新文章
- 【Android 逆向】Android 逆向通用工具开发 ( 网络模块开发 | 配置头文件 | 配置编译参数 | 网络初始化 WSAStartup 与清理 WSACleanup 操作 )
- 用Python分析元旦旅游热门城市,告诉你哪些景点性价比更高
- php 去年年初和年底时间,PHP 日期与时间
- 2021年中国移动游戏行业深度洞察报告
- Eclipse SVN冲突解决方案
- oracle非延迟约束,Oracle可延迟约束Deferable的使用
- 第一章节 c#面向对象
- 上海计算机一级和四六级,上海市关于英语四六级考试的改革通知
- 如何保证电脑硬盘格式化后数据不能被恢复?
- 7-2 然后是几点 (15 分)
- ubuntu18.04程序开机自启动
- 让AWS虚机访问公司内网资源(SSH反向代理)
- 图形界面介绍Violation Browser
- DD 摆磁铁(计蒜客信息学8月普及组模拟赛)
- 谷歌打不开?谷歌在华遭遇至今最大规模屏蔽
- python模块及包的导入
- 留良乡七个投资理财妙招助你养老金翻番
- 计算机二级程序设计题和答案不同,计算机二级C语言程序设计测试题及答案
- 另类解读宏观形势:美联储或将很快结束加息进程,重回量化宽松?
- Linux0.11内核源码解析-setup.s
热门文章
- Linux下卸载miniconda3(Anaconda类系)
- 2021年3月计算机语言排名,2021年3月编程语言排行榜:TOIBE将迎来重大改变,SQL如愿挤进前十...
- android自定义滤镜,让IjkPlayer支持插入自定义的GPU滤镜方法
- ValueError: This sheet is too large! Your sheet size
- yolo v4模型训练过程(超详细)
- 总结 | 四篇图网络综述文章提出的Future Directions
- 用python简单处理图片(3):添加水印
- 基于Python的《庆余年》评论分析
- Map集合常用方法总结
- C++ emplace_back()是什么