1 函数检查
issubclass() 方法用于判断参数 class 是否是类型参数 classinfo 的子子孙孙类。
issubclass(子类,父类) 返回True or False
type(实例化对象) 获取当前对象是哪个类创建 输出类名
isinstance(对象,类) 检查对象是否是类和继承类的实例
2 函数参数检测
是参数还是类
3 getattr() 对于字段属性,会直接返回值;对于方法属性,会返回其引用,直接引用()执行函数即可
getattr(obj,name[,default]) 其中obj为对象名,name是对象中的属性,必须为字符串。
返回值类型
object -- 对象。(类,模块)
name -- 字符串,对象属性。
default -- 默认返回值,如果不提供该参数,在没有对应属性时,将触发 AttributeError。
class Student: # 定义类
def __init__(self,name,identity,age='15'):
self.name = name
self.identity = identity
self.age = age
c=Student('1','23','23')
getattr(c,'name')这里必须为字符串切记,如果设置默认值的话,即便不存在变量也不会报错 这里类指模块和实例
总结 我们可以理解为一个查找器 根据条件查询 查找与之符合的成员
经典场景
1 根据不同的菜单数字选择不同的方法
2 除外还有
hashattr(obj,name) 检验是否存在
delattr(obj,name) 对象默认值在内存中删除
setattr(obj,name,default) 对象变量设置默认值,,对象方法设置表达式,在内存中
python基础知识 ~ 函数补充与反射
猜你喜欢
转载自www.cnblogs.com/danhuangpai/p/10942037.html
今日推荐
周排行