【发布时间】:2020-03-27 07:56:54
【问题描述】:
如果我在 python 文件中有一个包含一些代码的字符串。我要运行字符串中的代码,例如:
program = "for i in range(100):\n\tprint(i)"
eval(program)
但是,我很确定 eval 仅适用于数学运算,因此会引发语法错误:
Traceback (most recent call last):
File "main.py", line 2, in <module>
eval(program)
File "<string>", line 1
for i in range(100):
^
SyntaxError: invalid syntax
python 中有没有一种方法可以运行包含在字符串中的代码?
【问题讨论】:
-
严格来说,标题中问题的答案是使用
compile;exec生成代码并执行它。
标签: python