python 动态创建类

python导入模块分为2种:

1 import 模块名

也可以

2 modulename = 'haha'#模块字符串

然后:m = __import__('mymodule')

下面方法就可以用python 动态创建类

如果要取得模块中的一个属性的话:可以用getattr(),比如:
c = getattr(m, 'myclass')
myobject = c()
但是要注意:如果myclass并不在mymodule的自动导出列表中(__all__),则必须显式地导入,例如:
m = __import__('mymodule', globals(), locals(), ['myclass'])
c = getattr(m, 'myclass')
myobject = c()

posted @ 2012-12-02 16:20  老王python  阅读(434)  评论(0编辑  收藏  举报