Eval 动态评估单个表达式,并返回结果。
Exec 执行给定的代码块并丢弃其返回值,主要用于其副作用。
编译在 eval 和 exec 中都起着至关重要的作用:
Python 2
Python 3
评估中表达式:
副作用:
语句和代码块:
计算和打印:
a = 5 result = eval('37 + a') # Eval calculates the expression and returns the result (42) exec('print(37 + a)') # Exec executes the code (prints 42)
修改变量:
a = 2 exec('a = 47') # Exec modifies the global variable `a` result = eval('a = 47') # Eval throws an error because it cannot handle statements
以上是Python 中的 Eval、Exec 与 Compile:有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!