我试过了
eval('print("hello world")')
eval('return 0')
这两个都是不正确的。为什么它们无效,在使用eval()
时应该遵循哪些规则(尽可能少)?
答案 0 :(得分:8)
在Python中,eval()
评估表达式(产生值的东西)。 print
和return
都定义为语句(但在Python 3中,print
实际上是一个函数调用,它是一个表达式)。在执行语句的情况下,您需要使用the exec
statement代替。
答案 1 :(得分:-1)
eval()用于将变量的值计算为变量。
示例:
var="Hello World!"
code="var"
print eval(code)
输出应该是:
Hello World!