Python:如果模块的路径是字符串,如何导入模块?

Python:如果模块的路径是字符串,如何导入模块?,python,import,Python,Import,假设我有一个字符串中模块的路径module_to_be_imported='a.b.module' 如何导入它?您可以使用内置的导入功能。例如: import sys myconfigfile = sys.argv[1] try: config = __import__(myconfigfile) for i in config.__dict__: print i except ImportError: print "Unabl

假设我有一个字符串中模块的路径module_to_be_imported='a.b.module'

如何导入它?

您可以使用内置的
导入功能。例如:

import sys

myconfigfile = sys.argv[1]

try:
    config = __import__(myconfigfile)
    for i in config.__dict__:
        print i            
except ImportError:
    print "Unable to import configuration file %s" % (myconfigfile,)
有关详细信息,请参阅:


使用
fromlist
参数,否则您将获得
a
而不是
a.b.module
>>>n=\uu导入('mobius.api')>>>>n>>>>>用于n中的i.\uu指令:。。。打印i。。。设置内置文档文件轮询包路径api视频名称doc ccb>>>为什么导入mobius而不是mobius.api?请参阅下面的注释以获取答案。现在更新我的答案。
x = __import__('a.b.module', fromlist=[''])
>>> m = __import__('xml.sax')
>>> m.__name__
'xml'
>>> m = __import__('xml.sax', fromlist=[''])
>>> m.__name__
'xml.sax'