Orden de operaciones en Python

Manav Narula 12 abril 2022
Orden de operaciones en Python

Tenemos una variedad de operadores en Python, como aritméticos, lógicos y más. Una expresión es una combinación de operadores, operandos, variables. A veces, no es fácil evaluar una expresión debido a muchos operadores y no está claro qué operador debe evaluarse primero.

Por ejemplo, si evaluamos primero el operador + en 10 + 2 / 2, obtenemos 12/2, que es 6. Sin embargo, si evaluamos primero /, obtenemos 10 + 1, que es 11.

Por lo tanto, el orden en que se ejecutarán los operadores es importante. En Python, determinamos esto usando la Precedencia de Operadores. Determina qué operadores se ejecutarán primero en una expresión. Las expresiones en Python generalmente se ejecutan de izquierda a derecha.

La lista completa del orden de los operadores de mayor a menor se da a continuación.

Orden de operaciones en Python

Es simple recordar la lista anterior usando PEMDAS. Aquí, P significa paréntesis, E significa exponencial, MD significa multiplicación y división, ya que ambas tienen la misma precedencia, y AS significa suma y resta.

Cuando los operadores tienen la misma precedencia, se ejecuta el que ocurre primero.

Tome el siguiente ejemplo,

a = 10 * 5 + 2 / (8 + 2)
print(a)

Producción :

50.2

Analicemos el ejemplo anterior. Primero, la expresión entre paréntesis, que resulta ser 10. Luego se ejecuta el operador *, calculando 10*5, 50. El operador / calcula 2/10, que es 0,2. Finalmente, el operador + evalúa 50 + 0.2, que es 50,2.

Realizamos cálculos mucho más complicados en Python con expresiones más complejas. Los paréntesis tienen la prioridad más alta, como se muestra en el ejemplo anterior. Por lo tanto, se utilizan en expresiones tan complejas para agrupar las subexpresiones en consecuencia para controlar qué operadores evalúan primero.

Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python Operator