python学习笔记(35) 反射

isinstance()  #isinstance(obj,cls)检查obj是否是cls的对象

issubclass()  #issubclass(sub.super)检查sub是不是super的子类

反射:用字符串类型的名字去操作变量hasattr,getattr,setattr,delattr

eval有安全隐患

##############################################

class A:

  def func(self):

    print('in func')

a = A()

a.name = 'alex'

ret = getattr(a,'name')  #反射对象的属性

ret1 = getattr(a,'func')  #反射对象的方法

ret1()

key = input('请输入:')

if hasattr(alex,Teacher.dic[key])

  func= getattr(alex,Teacher.dic[key])

  func()

猜你喜欢

转载自www.cnblogs.com/farion/p/9912252.html
今日推荐