如何在 Python 2 中的 exec 中使用 eval
How to use eval inside exec in Python 2
在了解了这两个功能之后。我一直想知道如何在 exec() 函数中使用 eval() 。我问这个问题。
我在控制台中尝试了这个和其他变体,但没有成功:
exec "eval("1+1")"
您使用双引号将表达式 exec
d 及其参数括起来,这会使解析器感到困惑;你可以转义内部的或者对它们使用单引号。
合法的语法是 exec("eval('1+1')")
但这毫无意义,exec 用于语句。
In [25]: exec("eval('1+1')")
In [26]: exec("print(1+1)")
2
In [27]: exec("a = eval('1+1')")
In [28]: a
Out[28]: 2
在了解了这两个功能之后。我一直想知道如何在 exec() 函数中使用 eval() 。我问这个问题。
我在控制台中尝试了这个和其他变体,但没有成功:
exec "eval("1+1")"
您使用双引号将表达式 exec
d 及其参数括起来,这会使解析器感到困惑;你可以转义内部的或者对它们使用单引号。
合法的语法是 exec("eval('1+1')")
但这毫无意义,exec 用于语句。
In [25]: exec("eval('1+1')")
In [26]: exec("print(1+1)")
2
In [27]: exec("a = eval('1+1')")
In [28]: a
Out[28]: 2