Python Fonction eval()

Python 内置函数Fonctions intégrées de Python


Description

eval()La fonction est utilisée pour exécuter une expression sous forme de chaîne et renvoyer la valeur de l'expression.

Expression sous forme de chaînePeut contenir des variables, des appels de fonctions, des opérateurs et d'autres éléments de syntaxe Python.

Syntaxe

Voici la syntaxe de la méthode eval() :

eval(expression[, globals[, locals]])

Parameters

  • expression -- L'expression.
  • globals -- Portée des variables, espace de noms global. S'il est fourni, il doit être un objet dictionnaire.
  • locals -- Portée des variables, espace de noms local. S'il est fourni, il peut être n'importe quel objet de mappage.

La fonction eval() analyse l'expression sous forme de chaîne comme une expression Python et l'exécute dans l'espace de noms spécifié.

Valeur de retour

La fonction eval() convertit la chaîne en l'objet correspondant et renvoie le résultat de l'expression.


Exemples

Ce qui suit montre des exemples d'utilisation de la méthode eval() :

Exemple 1

>>>x = 7 >>> eval( '3 * x' ) 21 >>> eval('pow(2,2)') 4 >>> eval('2 + 2') 4 >>> n=81 >>> eval("n + 4") 85

Exemple 2

# Exécuter une expression mathématique simple
result = eval("2 + 3 * 4")
print(result)  # Sortie : 14

# Exécuter une référence de variable
x = 10
result = eval("x + 5")
print(result)  # Sortie : 15

# Exécuter une expression dans l'espace de noms spécifié
namespace = {'a': 2, 'b': 3}
result = eval("a + b", namespace)
print(result)  # Sortie : 5

Remarque :Le code exécuté par la fonction eval() présente des risques de sécurité potentiels. Si une chaîne non fiable est utilisée comme expression, elle peut conduire à des vulnérabilités d'injection de code. Par conséquent, la fonction eval() doit être utilisée avec prudence, et assurez-vous que seules des expressions de chaîne fiables sont exécutées.

Python 内置函数Fonctions intégrées de Python

Autres extensions