Python Language instruction exec est une fonction dans Python 3


Exemple

Dans Python 2, exec est une instruction, avec une syntaxe spéciale: exec code [in globals[, locals]]. Dans Python 3, exec est maintenant une fonction: exec(code, [, globals[, locals]]) , et la syntaxe Python 2 SyntaxError une SyntaxError .

Au fur et à mesure que print passait d'une instruction à une fonction, une importation __future__ était également ajoutée. Cependant, il n'y a pas from __future__ import exec_function , car il n'est pas nécessaire: l'instruction exec dans Python 2 peut également être utilisée avec une syntaxe qui ressemble exactement à l' exec fonction exec dans Python 3. Vous pouvez donc modifier les instructions

Python 2.x 2.3
exec 'code'
exec 'code' in global_vars
exec 'code' in global_vars, local_vars

aux formes

Python 3.x 3.0
exec('code')
exec('code', global_vars)
exec('code', global_vars, local_vars)

et ces dernières formes sont garanties de fonctionner de manière identique dans Python 2 et Python 3.