将userinputed字符串作为python中的模块导入

时间:2013-11-26 08:04:42

标签: python python-2.7

我想导入一个文件,该文件是用户输入的字符串

说:

a=raw_input("File : ")
import a #How do i import a user defined string which is actually a file

2 个答案:

答案 0 :(得分:7)

这样做非常小心。除非你非常确定你知道自己在做什么,否则导入任意代码是一个可怕的想法。

也就是说,您可以使用内置的importlib模块执行此操作: http://docs.python.org/2.7/library/importlib.html

importlib.import_module(a)

答案 1 :(得分:1)

你可以这样做:

m = __import__(a)

在这种情况下m是对象模块,例如:

>>> m = __import__('sys')
>>> m.path
['', '/usr/lib/python2.7', '/usr/local/lib/python2.7/dist-packages' ... ]