Qu'est-ce que la fonction eval en Python ? Le paramètre réel de eval(expression, globals=None, locals=None) est une chaîne et des variables globales et locales facultatives. L'argument globals doit être un dictionnaire. les locaux peuvent être n’importe quel objet de mappage. Le paramètre
expression sera analysé et évalué comme une expression Python (techniquement une liste de conditions), en utilisant les dictionnaires globals et locaux pour les espaces de noms globaux et locaux. Si le dictionnaire global existe et ne contient pas de valeur saisie par __builtins__ , une référence au dictionnaire saisie par buildins est insérée avant que l'expression ne soit analysée. Cela signifie que l'expression a généralement un accès complet aux modules intégrés standard et que l'environnement restreint est propagé. Si le dictionnaire local est omis, sa valeur par défaut est le dictionnaire global. Si les deux dictionnaires sont omis, l'expression sera évaluée dans le contexte dans lequel eval() est appelé. La valeur de retour est le résultat de l'évaluation de l'expression. Les erreurs de syntaxe seront signalées comme exceptions.
Recommandations associées : "Tutoriel vidéo Python"
Par exemple :
>>> x = 1 >>> eval('x+1') 2
Cette fonction peut également être utilisée pour exécuter n'importe quel objet de code (tel que compile() créé). Dans ce cas, le paramètre est un objet code et non une chaîne. Si l'argument mode lors de la compilation de l'objet est 'exec' alors la valeur de retour de eval() est None .
Astuce : La fonction exec() prend en charge l'exécution dynamique des instructions. Les fonctions globals() et locals() renvoient chacune les dictionnaires global et local actuels, vous pouvez donc les transmettre à eval() ou exec() pour les utiliser.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!