`

python学习笔记(二)---关于python的反射

阅读更多

刚刚在写关于python的反射代码,现跟大家分享一下

 

import new

class TestService:

def helloWorld(self):

print 'Hello World , this is Test '

service =  globals()['TestService']

obj = new.instance(service)

service.__dict__['helloWorld'](obj)

 

解释一下:

1、通过globals()这个函数可以得到一个跟一个工程相关类的一个字典集合,然后可以通过这个字典集合或得我们想要反射类的一个对象;

 

2、然后用new模块的instance方法得到类的实例;

 

3、service.__dict__方法可以获取类中的方法集合,再通过这个集合去调用具体的方法。实现为service.__dict__['helloWorld'](obj)

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics