反射
类 - 反射
举例如下:
定认一个狗类,狗有一个吃的方法,通过用户输入来判断方法是否存在,如果存在,调用该方法。
hasattr(obj,name_str):判断对象是否有对应的字符串方法;
getattr(obj,name_str):根据字符串去获取obj里的对应的方法的内存地址;
setattr(obj,name_str,fun) 动态将fun方法增加到obj中;
delattr 删除一个属性;
动态将fun方法装载进obj中;
当用setattr传入的是一个属性,而不是一个方法时,返回的是默认setattr的默认值。
执行结果:
删除属性