El módulo math
El módulo math en Python ofrece una serie de funciones matemáticas. Algunas de las más comunes incluyen:
Trigonometría básica:
- Trigonometría básica:
sin(x): devuelve el seno dex(en radianes).cos(x): devuelve el coseno dex.tan(x): devuelve la tangente dex.
- También tiene las funciones inversas:
asin(x): devuelve el arcoseno dex.acos(x): devuelve el arcocoseno dex.atan(x): devuelve el arcotangente dex.
- Conversión de ángulos:
pi: constante que aproxima π.radians(x): conviertexde grados a radianes.degrees(x): conviertexde radianes a grados.
El siguiente código demuestra el uso de algunas de estas funciones: trabaja con conversiones de ángulos entre grados y radianes, y muestra relaciones trigonométricas básicas como la de seno, coseno y tangente.
from math import pi, radians, degrees, sin, cos, tan, asin
ad = 90
ar = radians(ad) # Convierte 90 grados a radianes
ad = degrees(ar) # Convierte nuevamente a grados
print(ad == 90.) # Verifica si el valor en grados sigue siendo 90
print(ar == pi / 2.) # Verifica si el valor en radianes es pi/2
print(sin(ar) / cos(ar) == tan(ar)) # Verifica si la tangente es sin/cos
print(asin(sin(ar)) == ar) # Verifica si el arcoseno de sin(pi/2) devuelve pi/2
Funciones hiperbólicas
- Además de las funciones circulares, el módulo también incluye análogos hiperbólicos:
sinh(x): seno hiperbólico.cosh(x): coseno hiperbólico.tanh(x): tangente hiperbólica.
- Funciones inversas:
asinh(x),acosh(x),atanh(x).
Exponenciación
e: una constante con un valor que es una aproximación del número de Euler (e).exp(x): devuelve el valor deex.log(x): el logaritmo natural o neperiano dex.log(x, b): el logaritmo dexcon baseb.log10(x): el logaritmo decimal dex(más preciso quelog(x, 10)).log2(x): el logaritmo binario dex(más preciso quelog(x, 2)).
Además podemos usar la siguiente función, sin necesidad de importarla:
pow(x, y): calcula el valor dexy (potencia).
Ejemplo:
from math import e, exp, log
print(pow(e, 1) == exp(log(e)))
print(pow(2, 2) == exp(2 * log(2)))
print(log(e, e) == exp(0))
Funciones de propósito general
El último grupo consta de algunas funciones de propósito general como:
sqrt(x): devuelve la raíz cuadrada dex.ceil(x): devuelve el entero más pequeño mayor o igual quex.floor(x): el entero más grande menor o igual quex.trunc(x): el valor dextruncado a un entero (ten cuidado, no es equivalente aceilofloor).factorial(x): devuelvex!(xtiene que ser un valor entero y no negativo).hypot(x, y): devuelve la longitud de la hipotenusa de un triángulo rectángulo con las longitudes de los catetos iguales axyy(lo mismo quesqrt(pow(x, 2) + pow(y, 2)) pero más preciso.
Ejemplo:
from math import ceil, floor, trunc
x = 1.4
y = 2.6
print(floor(x), floor(y))
print(floor(-x), floor(-y))
print(ceil(x), ceil(y))
print(ceil(-x), ceil(-y))
print(trunc(x), trunc(y))
print(trunc(-x), trunc(-y))