A veces, mientras trabajamos con Python Strings, podemos tener ciertos cálculos en formato de string y necesitamos formular su resultado. Esto puede ocurrir en dominios relacionados con Matemáticas y datos. Analicemos ciertas formas en las que podemos realizar esta tarea.
Método #1: Usar regex + map() + sum()
La combinación de las funciones anteriores se puede usar para resolver este problema. En esto, realizamos la tarea de cálculo usando sum() y mapeo de operador y operación usando map(). Este método se puede usar si la string solo tiene + o -. El método #2 también se puede usar para otras operaciones.
Python3
# Python3 code to demonstrate working of # Expression evaluation in String # Using regex + map() + sum() import re # initializing string test_str = "45 + 98-10" # printing original string print("The original string is : " + test_str) # Expression evaluation in String # Using regex + map() + sum() res = sum(map(int, re.findall(r'[+-]?\d+', test_str))) # printing result print("The evaluated result is : " + str(res))
The original string is : 45+98-10 The evaluated result is : 133
Método #2: Usar eval()
Esta es una de las formas en que se puede realizar esta tarea. En esto, realizamos cálculos internamente usando eval().
Python3
# Python3 code to demonstrate working of # Expression evaluation in String # Using eval() # initializing string test_str = "45 + 98-10" # printing original string print("The original string is : " + test_str) # Expression evaluation in String # Using eval() res = eval(test_str) # printing result print("The evaluated result is : " + str(res))
The original string is : 45+98-10 The evaluated result is : 133
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA