kopia lustrzana https://github.com/animator/learn-python
1.7 KiB
1.7 KiB
Understanding the eval
Function in Python
Introduction
The eval
function in Python allows you to execute a string-based Python expression dynamically. This can be useful in various scenarios where you need to evaluate expressions that are not known until runtime.
Syntax
eval(expression, globals=None, locals=None)
Parameters:
- expression: String is parsed and evaluated as a Python expression
- globals [optional]: Dictionary to specify the available global methods and variables.
- locals [optional]: Another dictionary to specify the available local methods and variables.
Examples
Example 1:
result = eval('2 + 3 * 4')
print(result) # Output: 14
Example 2:
x = 10
expression = 'x * 2'
result = eval(expression, {'x': x})
print(result) # Output: 20
Example 3:
x = 10
def multiply(a, b):
return a * b
expression = 'multiply(x, 5) + 2'
result = eval(expression)
print("Result:",result) # Output: Result:52
Example 4:
expression = input("Enter a Python expression: ")
result = eval(expression)
print("Result:", result)
#input= "3+2"
#Output: Result:5
Example 5:
import numpy as np
a=np.random.randint(1,9)
b=np.random.randint(1,9)
operations=["*","-","+"]
op=np.random.choice(operations)
expression=str(a)+op+str(b)
correct_answer=eval(expression)
given_answer=int(input(str(a)+" "+op+" "+str(b)+" = "))
if given_answer==correct_answer:
print("Correct")
else:
print("Incorrect")
print("correct answer is :" ,correct_answer)
#2 * 1 = 8
#Incorrect
#correct answer is : 2
#or
#3 * 2 = 6
#Correct
Conclusion
The eval function is a powerful tool in Python that allows for dynamic evaluation of expressions.