我有一个包含文件名和类名的字典如何导入这个类名,我该如何创建这个类?
例:
classNames = { 'MCTest':MCTestClass}
Run Code Online (Sandbox Code Playgroud)
我想导入MCTest并创建MCTestClass.
你必须使用这个__import__功能:
http://docs.python.org/library/functions.html# import
来自doc页面的示例:
>>> import sys
>>> name = 'foo.bar.baz'
>>> __import__(name)
<module 'foo' from ...>
>>> baz = sys.modules[name]
>>> baz
<module 'foo.bar.baz' from ...>
Run Code Online (Sandbox Code Playgroud)
要从baz实例化一个类,你应该能够做到:
>>> SomeClass = getattr(baz, 'SomeClass')
>>> obj = SomeClass()
Run Code Online (Sandbox Code Playgroud)