一.反射 通过字符串映射或者修改程序运行时的状态,属性,或者方法。 1.getattr(object,name,default=None) 2.hasattr(object,name) 3.setattr(x,y,v) 4.delattr(x,y) >>:age22 ...
分类:
编程语言 时间:
2018-10-05 18:44:00
阅读次数:
158
1.isinstance(obj,cls) 检查obj是否是类cls的对象,issubclass(sub,super) 检查sub是否是super的子类 2.反射(常用于可插拔方式) 3.__setattr__,__getattr__,__delattr__ 4.二次加工标准类型(包装) 5.__g ...
分类:
编程语言 时间:
2018-10-04 11:44:27
阅读次数:
192
class Person: number = 0 def __init__(self,name,gender,age): self.name = name self.gender = gender self.age = age Person.number+=1 def displayPerson(s... ...
分类:
编程语言 时间:
2018-09-23 18:11:13
阅读次数:
201
__getattr__: 属性查找失败后,解释器会调用 __getattr__ 方法. a.tmpnone 表达式执行顺序: 1、首先会检查a实例有没有名为x的属性 2、到类(a.__class__)中查找 3、顺着继承树继续查找. 4、调用a所属类中定义的 __getattr__ 方法,传入sel ...
分类:
编程语言 时间:
2018-09-21 15:17:03
阅读次数:
164
通常情况下,我们在访问类或者实例对象的时候,会牵扯到一些属性访问的魔法方法,主要包括: ① __getattr__(self, name): 访问不存在的属性时调用 ② __getattribute__(self, name):访问存在的属性时调用(先调用该方法,查看是否存在该属性,若不存在,接着去 ...
分类:
编程语言 时间:
2018-09-19 16:20:12
阅读次数:
194
classC:def__getattr__(self,name):print(1)returnsuper().__getattr__(name)def__getattribute__(self,name):print(2)returnsuper().__getattribute__(name)def__setattr__(self,name,value):print(3)super().__set
分类:
其他好文 时间:
2018-09-15 17:32:55
阅读次数:
184