我有python模块的变量。我想导入它,以获取其变量。 内存python文件内容如下:
# import smth
aaa = {'mykey1':'myval1','mykey2':'myval2','mykey3':'myval3','mykey4':'myval4'}
bbb = ['mykey1', 'mykey2']
ccc = 'some string'
ddd = 17
#eee = 18
... and so on
我想创建没有tmp文件,除非在内存中。
答案 0 :(得分:1)
您可以使用exec
函数从字符串执行python脚本。如果要获取脚本中定义的全局变量,则需要为其提供一个对象/字典。示例:
script = "# import smth\naaa = {'mykey1':'myval1','mykey2':'myval2','mykey3':'myval3','mykey4':'myval4'}\nbbb = ['mykey1', 'mykey2']\nccc = 'some string'\nddd = 17\n#eee = 18"
results = {}
exec(script, result)
print result['ddd'] # 17
请确保您信任正在执行的代码,因为它以与您的程序相同的权限运行。