读书人

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

发布时间: 2012-08-31 12:55:03 作者: rapoo

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)

读书人网 >perl python

热点推荐