python基础知识 ~ 函数补充与反射

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) 对象变量设置默认值,,对象方法设置表达式,在内存中

猜你喜欢

转载自www.cnblogs.com/danhuangpai/p/10942037.html
今日推荐