Python eval

Python eval() builtin function is used to evaluate an expression that is given as a string. eval() can also execute code objects created by compile() method.

In this tutorial, we will learn about the syntax of Python eval() function, and learn how to use this function with the help of examples.

Syntax

The syntax of eval() function is

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

where

Parameter Required/Optional Description
expression Required A string. This expression is parsed and evaluated as a Python expression.
globals Optional A dictionary. This is used as global namespace.
locals Optional Any mapping object. This is used as local namespace.

Returns

The function returns value of the given expression.

Examples

1 Evaluate an Expression

In this example, we take a Python expression in a string, and pass it to eval() function for evaluation.

Python Program

x = 10
expression = 'x + 5'
result = eval(expression)
print("Result :", result)

Output

Result : 15

2 Evaluate an Expression with Builtin Function

In this example, we take a Python expression in a string where the expression uses Python builtin function pow(), and pass it to eval() function for evaluation.

Python Program

x = 10
expression = 'pow(x, 3)'
result = eval(expression)
print("Result :", result)

Output

Result : 1000

3 Evaluate an Expression with Global Values

In this example, we provide globals parameter to eval() function. Values for the variables in this dictionary are used for expression evaluation.

Python Program

x = 10
expression = 'pow(x, 3)'
globals = {'x': 5}
result = eval(expression, globals)
print("Result :", result)

Output

Result : 125

4 Evaluate an Expression with Syntax Errors

If there are any syntax errors while parsing the expression, an exception is raised.

Python Program

x = 10
expression = 'x - a'
result = eval(expression)
print("Result :", result)

Output

NameError: name 'a' is not defined

Conclusion

In this Python Tutorial, we have learnt the syntax of Python eval() builtin function, and also learned how to use this function, with the help of Python example programs.