Operadores algebraicos

Python incluye los cuatro operadores aritméticos: suma (+), resta (-), multiplicación (*) y división (/). Se muestran a continuación algunos ejemplos:

Operadores aritméticos

Obsérvese que en In [25] estamos creando variables de tipo "número entero" (m y n, variables a las que se asignan los valores 4 y 2, respectivamente) y, sin embargo, el resultado contenido en r es 2.0 -un número real-. Esto es así porque el resultado de una expresión en la que existe alguna división siempre es considerado un número real, aun cuando la parte decimal pueda ser cero (como en este caso).

Otro comentario interesante: en In [26] hemos utilizado paréntesis para especificar el orden en el que deseamos que se ejecuten las operaciones: queremos que, en primer lugar, se calcule la resta de m y n y, solo después, que el resultado se multiplique por dos. Si no hubiéramos usado los paréntesis el resultado hubiera sido distinto, como puede comprobarse a continuación:

Ejemplo de precedencia de operadores

En In [28] se calcula primero la multiplicación n * 2 (lo que devuelve como resultado 6) y después se realiza la resta 5 (valor de m) menos 6 (valor de n * 2), dando como resultado el -1 que vemos en la imagen. Esto es así debido a la precedencia de los operadores, es decir, a la diferente prioridad que tienen unos operadores con respecto a otros. Veremos un poco más adelante cuál es esta precedencia.

Hay tres operadores algebraicos adicionales:

Operador //

El operador // divide dos valores y devuelve el número entero más próximo que sea menor o igual al resultado. Esto, cuando el resultado es un número positivo no tiene demasiada complejidad: simplemente se devuelve la parte entera de la división:

El operador //

Sin embargo, cuando el resultado es un número negativo, lo que se devuelve es el entero más próximo pero inferior al resultado:

El operador //

En este caso, el resultado de la división es -3.5, por lo que se devuelve el valor -4.

Operador %

Este operador también divide dos números, pero devuelve el resto de la división -lo que se conoce como módulo-. Por ejemplo:

El operador %

En el primer caso (7 % 3) la parte entera del resultado de la división es 2 y el resto es 1. En el segundo caso (11 % 3) la parte entera del resultado de la división es 3 y el resto es 2.

Operador **

Por último, el operador exponenciación devuelve el resultado de elevar un número a otro. Por ejemplo:

El operador **