exec 語句是 Python 3 中的一個函式
在 Python 2 中,exec
是一個語句,具有特殊語法:exec code [in globals[, locals]].
在 Python 3 中,exec
現在是一個函式:exec(code, [, globals[, locals]])
,Python 2 語法將引發一個 SyntaxError
。
當 print
從語句變為函式時,還新增了 __future__
匯入。但是,沒有 from __future__ import exec_function
,因為它不需要:Python 2 中的 exec 語句也可以使用與 Python 3 中的 exec
函式呼叫完全相同的語法。因此,你可以更改語句
Python 2.x >= 2.3
exec 'code'
exec 'code' in global_vars
exec 'code' in global_vars, local_vars
形式
Python 3.x >= 3.0
exec('code')
exec('code', global_vars)
exec('code', global_vars, local_vars)
並且後者的形式保證在 Python 2 和 Python 3 中都能完全相同。