__getattr__

获取一个对向不存在的属性值时,会自动触发此方法

__getattribute__

获取对象的属性值时自动触发,不论对象的这个属性是否存在

》获取不存在的属性值时,触发

》属性存在时,也触发

》意味着,只要有__getattribute__在,__getattr__永无出头之日

__getattribute__ 放权给__getattr__

当两个方法共存的时候

getattr也可以生效的

需要他的老大getattribute给他放权才可

》如何放权?

只需要让老大抛出一个异常即可

》抛出什么异常?

我们引发一个错误

调一个不存在的对象属性,引发一个异常

记住异常的名字,就抛这个异常

》放权吧!


只要老大抛异常

哪怕是对象存在的属性,也可以进入到 getattr 中

python-对向-getattribute与getattr相关推荐

  1. python getattribute 、getattr、setattr 详解

    python类中默认有一些特殊方法,这篇文章记录一下特殊方法的功能及用法. 一.__getattribute__() 顾名思义,当访问object的属性会调用该方法,可以测试: class A(obj ...

  2. Python基础教程:hasattr() getattr() setattr() 使用方法详解

    hasattr(object, name) 判断一个对象里面是否有name属性或者name方法,返回BOOL值,有name特性返回True, 否则返回False. 需要注意的是name要用括号括起来 ...

  3. Python中的setattr()和getattr()

    [使用框架 PyTorch 1.2] 这是笔者在复现Alphago Zero的双头残差网络时遇到的情况.笔者准备使用具有19个相同残差块的残差网络,在国外博客中发现了这种写法: 当然,你用以下这种方式 ...

  4. python getattr函数_在python中对self使用getattr函数

    首先,对类使用大写字母,对变量使用小写字母,因为其他Python程序员更容易阅读:) 现在,您不需要在类本身中使用getattr() 只要做:self.attribute 然而,一个例子是:class ...

  5. Python学习: hasattr()、getattr()、setattr()函数简介

    一.hasattr(object, name) 判断object对象中是否存在name属性,当然对于python的对象而言,属性包含变量和方法:有则返回True,没有则返回False:需要注意的是na ...

  6. Python中dir,hasattr,getattr,setattr,vars的使用

    Python中dir,hasattr,getattr,setattr,vars的使用 Python一切皆对象,对象都有很多属性和方法,使用时我们怎么知道对象有哪些属性,以及如何获取对象的属性和设置对象 ...

  7. python getattr用法_python自省函数getattr的用法

    getattr是python里的一个内建函数 getattr()这个方法最主要的作用是实现反射机制.也就是说可以通过字符串获取方法实例.这样,你就可以把一个类可能要调用的方法放在配置文件里,在需要的时 ...

  8. Python:基本语法看这一篇就够了

    前言 将之前的Python文章修改.扩展,并整合到一起,方便查阅. 一.python胶水语言 计算机语言类型 编译型语言:将源代码编译生成机器语言,再由机器运行机器码(二进制). 解释性语言:在运行的 ...

  9. Python Cookbook3 (7)函数

    1. 任意数量的位置参数和关键字参数 关键字参数必须全部在位置参数后面 def anyargs(*args, **kwargs):print(args) # A tupleprint(kwargs) ...

最新文章

  1. 【实习】京东搜索相关性算法部门
  2. ABAP性能优化之使用 “for all entries”
  3. Ansible Playbook核心元素以及组件
  4. mybatis初始化过程
  5. php amazon-s3_推荐亚马逊电影-一种协作方法
  6. 算法题存档20200627(树)
  7. php中各种操作字符串和时间戳的代码关键词
  8. 测试linux和window下 jdk最大能使用多大内存
  9. 使用面向 iOS 的本机插件扩展
  10. 一个萌新关于电脑安装软件错误提示“1402”的应对方法
  11. 27家金融类央企(中投+3政策性银行+5国有银行+中信+光大+4保险集团)(4大资产管理+建银+再保险+保险保障+中诚信托+中央国债+银行金融+科技证券+证券基金)
  12. win7怎样修改文件后缀名
  13. 万兆网络传输速度测试_iperf测试万兆网卡tcp性能
  14. 2048游戏java教程_java版实现2048游戏功能
  15. “天河一号”算一小时13亿人算340年
  16. SageX3和车辆排队系统、地磅系统集成方案
  17. 哈希函数(散列函数)详解
  18. LeetCode——706,设计哈希映射
  19. 2022-2028年全球及中国红外(IR)传感器行业投资前景分析
  20. PHP后端跨域HEADER头的设置

热门文章

  1. 移动端1px像素实现技巧 - 讲解篇
  2. WordPress广告管理插件Adning Advertising1.5.8汉化版
  3. HTML5 canvas点击爆炸网页特效代码
  4. SwitchHosts!提示没有切换权限:C:\WINDOWS\system32\drivers\etc\host 文件无法修改
  5. 全开源纵横支付多平台多功能支付系统源码
  6. Spring Boot 前后端分离解决跨越问题
  7. 多主机远程桌面连接,系统自带的。tsmmc
  8. 用dynamic增强C#泛型表达力
  9. 9:34 2009-7-28
  10. MySQL数据库备份的10个教程