扩展Python的eval

时间:2015-06-10 17:31:09

标签: python python-3.x

string = "if X > 3 :\n   print(\"X is Greater\")\nelse :\n   print(\"X is Lesser\")"

""" It prints the string as an indented code of if else statements if X is greater than 3
X is greater else it prints X is lesser"""

X = 6

eval(string)

python中的eval()可以这种方式使用,还是有任何我遗漏的东西。

1 个答案:

答案 0 :(得分:3)

eval仅用于表达式。从文档

  

表达式 参数被解析并评估为 Python表达式

在这里使用exec

external

但请注意,这两种陈述使用起来都很危险。 (见eval really is dangerous