【问题标题】:importing a module from input从输入导入模块
【发布时间】:2013-11-23 06:45:05
【问题描述】:
原谅一个菜鸟。这可能超出了我的范围。
我目前通过
从模块导入变量
from a import *
我的目标是根据输入字符串导入文件。
mod=str(input("Select a module: "))
from str(mod) import *
这是我尝试过的。显然错了。我希望代码要求输入,这将是特定模块的名称,然后导入用户输入的内容。
抱歉,我可以提供更多代码,问题的性质使我无法展示我需要的内容
【问题讨论】:
标签:
input
python-3.x
import
【解决方案1】:
你可以简单地使用__import__():
>>> d = __import__("datetime")
>>> d
<module 'datetime' from 'C:\\Python33\\lib\\datetime.py'>
对于更复杂的导入,我建议使用importlib。
EDIT1 使其更清晰:
>>> mymodule = __import__(input("Which module you want?" ))
>>> mymodule.var1
如果你想要var1 而不是mymodule.var1,我会为全局命名空间设置别名。但是,我不会这样做,因为我认为这没有任何意义。