在我了解了这两个功能之后。我一直想知道如何在exec()函数中使用eval()。我问这个说不出来。
我在控制台中尝试了这个和其他变体但是没有成功:
exec "eval("1+1")"
答案 0 :(得分:0)
你使用双引号来围绕表达式exec
d及其参数,这会混淆解析器;你可以逃避内在的,也可以使用单引号。
答案 1 :(得分:0)
法律语法是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