Es posible sumar variables usando el símbolo +. Cuando las variables son numéricas, se suman matemáticamente y cuando son textos se concatenan. Revise cuidadosamente el siguiente ejemplo.
# "Sumar" dos textos
x = "Python es "
y = "asombroso"
z = x + y
print(z)
# Sumar dos números
n1 = 1
n2 = 5
suma = n1 + n2
print(suma)
# Escribir texto y números
print("la suma de", n1, "y", n2, "es igual", suma)
print("la suma de " + str(n1) + " y " +
str(n2) + " es igual " + str(suma))
Mediante el uso de operadores podemos utilizar Python para hacer cálculos que haríamos con una calculadora. Por ejemplo, podemos ejecutar operaciones muy sencillas teniendo en cuenta la siguiente tabla:
Operador | Descripción |
---|---|
+ |
Suma |
- |
Resta |
* |
Multiplicación |
/ |
División |
** |
Potencia |
% |
Módulo (residuo) |
// |
División entera (cociente) |
La división es una operación bien especial pues la mayoría de las ocasiones produce un número con cifras decimales. Sin embargo, cuando estábamos pequeños nos enseñaron a dividir enteros dando como respuesta un entero llamado cociente y lo que hacía falta para completar la división, un número llamado residuo. En Python podemos calcular esos valores con //
para el cociente y %
para el residuo. Por ejemplo, sabemos que:
Tenemos que en Python se escribe la división entre enteros como
res = 20 // 3
print(res)
y el residuo de la división, es decir la operación módulo como
res = 20 % 3
print(res)
Para que Python pueda traducir exitosamente una expresión numérica, existen reglas de precedencia en el orden de ejecución de las operaciones. Estas reglas son comunes a todos los lenguajes de programación. La siguiente tabla muestra la procedencia, es decir, el orden en el cual se ejecutan las operaciones aritméticas en una expresión numérica.
Precedencia | Operadores |
---|---|
0 | (...) |
1 | ** |
2 | % |
3 | * , / |
4 | + , - |
Si queremos operar por ejemplo la expresión:
$$ 5\times(3-5)^2-\cfrac{6}{81^{1/4}}$$
tenemos que escribir:
res = 5*(3-5)**2-6/81**(1/4)
print(res)
El cálculo ocurre de la siguiente forma
(3-5)
es igual a -2
(1/4)
es igual a 0.25
(3-5)**2
es igual a (-2)**2
que es 4
81**(1/4)
es igual a 81**0.25
que es 3
5*(3-5)**2
es igual a 5*4
que es 20
6/81**(1/3)
es igual a 6/3
que es 2
5*(3-5)**2-6/81**(1/4)
es igual a 20 - 2
que es 18
Es muy importante usar bien los paréntesis, el uso o desuso puede generar problemas graves en las cuentas, encuentre el error y describa lo que hizo Python en los siguientes casos respecto a la operación anterior:
res = 5*3-5**2-(6)/(81**(1/4))
print(res)
res = 5*(3-5)**2-6/(81**1/4)
print(res)
res = 5*(3-5)**2-6/81**1/4
print(res)
res = 5*3-5**2-6/81**1/4
print(res)
Operador | Descripción | Ejemplo | Resultado |
---|---|---|---|
== |
Prueba si dos valores son iguales | 3==3 |
True |
!= |
Prueba si dos valores no son iguales entre si | 2!=3 |
True |
< |
Prueba si el valor de la izquierda es menor que el de la derecha | 4<3 |
False |
> |
Prueba si el valor de la izquierda es mayor que el de la derecha | 4>3 |
True |
<= |
Prueba si el valor de la izquierda es menor o igual que el de la derecha | 4<=3 |
False |
>= |
Prueba si el valor de la izquierda es mayor igual que el de la derecha | 4>=3 |
True |
Operador | Descripción | Ejemplo | Resultado |
---|---|---|---|
and |
Regresa verdadero si el valor de las izquierda y el de la derecha son verdaderos | (3<4)and(5>1) |
True |
or |
Regresa verdadero si uno de los dos valores a(izquierda o derecha es verdadero, o ambos | (3>4)or(5<1) |
False |
not |
Regresa verdadero si el valor que se está evaluando es falso | not(3>2) |
False |
Verifique que entiende que hace el siguiente código. ¿Cuál es la salida?
edad = 15
estado = (edad>12)and(edad<20):
print('estado =', estado)
Revise la siguiente línea y asegúrese que la entiende. Si tiene dudas consulte a sus profesores o asistentes monitores.
res = 3+(-4)**(1/2) # Recordemos un poquito de nuestras matemáticas
print(res)
Finalmente, una función elemental y útil para el tratamiento de números decimales es round
. La usamos para redondear los valores reales con el número de decimales que escojamos. Por defecto el redondeo quita todas las cifras decimales. Por favor revise los siguientes dos ejemplos y haga sus pruebas propias.
# Cálculo original
n1 = 47 / 3
print(n1)
# Redondea sin cifras decimales
n2 = round(n1)
print(n2)
# Redeondeo con tres cifras decimales
n3 = round(n1, 3)
print(n3)
Use la función round()
para redondear el número $\pi$ con 6 cifras decimales.
Para poder usar el número $\pi$ almacenado en la variable denominada pi
del módulo math
, vamos a usar el siguiente código: from math import pi
# importando la variable que almacena el número pi:
from math import pi
# imprime el número pi con 6 cifras decimales: