Acordeón de los Índices
Índice de los temas
Python Math
🔢 Python Math: Operaciones Fundamentales
Python, como lenguaje de programación, proporciona de forma nativa las operaciones matemáticas fundamentales que seguramente ya conoces:
- Suma:
+
(ej.5 + 3
da como resultado8
) - Resta:
-
(ej.10 - 4
da como resultado6
) - Multiplicación:
*
(ej.6 * 7
da como resultado42
) - División:
/
(ej.8 / 2
da como resultado4.0
. ¡Ojo! Siempre devuelve un número de punto flotante.) - División Entera:
//
(ej.8 // 3
da como resultado2
. Devuelve la parte entera de la división.) - Módulo (Resto de la división):
%
(ej.8 % 3
da como resultado2
) - Potenciación:
**
(ej.2 ** 3
da como resultado8
)
Orden de las Operaciones:
Python sigue el orden estándar de las operaciones matemáticas (PEMDAS/BODMAS):
- Paréntesis / Brackets
- Exponentes / Orders
- Multiplicación y División (de izquierda a derecha)
- Adición y Sustracción (de izquierda a derecha)
Puedes usar paréntesis para controlar el orden en que se realizan las operaciones.
Ejemplos de Operaciones Matemáticas en Python:
resultado_suma = 5 + 3
print(f"5 + 3 = {resultado_suma}")
resultado_resta = 10 - 4
print(f"10 - 4 = {resultado_resta}")
resultado_multiplicacion = 6 * 7
print(f"6 * 7 = {resultado_multiplicacion}")
resultado_division = 8 / 2
print(f"8 / 2 = {resultado_division}")
resultado_division_entera = 8 // 3
print(f"8 // 3 = {resultado_division_entera}")
resultado_modulo = 8 % 3
print(f"8 % 3 = {resultado_modulo}")
resultado_potencia = 2 ** 3
print(f"2 ** 3 = {resultado_potencia}")
operacion_combinada = (10 + 2) * 3 - 6 / 2
print(f"(10 + 2) * 3 - 6 / 2 = {operacion_combinada}")
Tipos de Números en Python:
Python soporta diferentes tipos de números que son relevantes para las matemáticas:
- Enteros (
int
): Números enteros sin parte decimal (ej.-5
,0
,100
). - Números de Punto Flotante (
float
): Números con parte decimal (ej.3.14
,-0.5
,2.0
). - Números Complejos (
complex
): Números con una parte real y una parte imaginaria (ej.3 + 2j
). Python proporciona soporte nativo para operaciones con números complejos.
Funciones Matemáticas Built-in:
Además de los operadores, Python también incluye algunas funciones matemáticas built-in que son muy útiles. Exploraremos estas funciones en el siguiente tema.
Built-in Math Functions
🛠️ Funciones Matemáticas Built-in: Herramientas Esenciales
Python incluye una serie de funciones matemáticas que están siempre disponibles para su
uso sin necesidad de importar el módulo math
. Aquí tienes algunas de las
más importantes:
abs(x)
: Devuelve el valor absoluto dex
.pow(x, y)
: Devuelvex
elevado a la potencia dey
(equivalente ax**y
). También puede tomar un tercer argumento opcionalz
para calcular(x**y) % z
de manera más eficiente.round(number[, ndigits])
: Redondea un número al número de decimales especificado (ndigits
). Sindigits
se omite o esNone
, devuelve el entero más cercano. Para el redondeo a la mitad, Python 3 utiliza la regla de "redondear a par".min(iterable, *args)
: Devuelve el elemento más pequeño en un iterable o el más pequeño de dos o más argumentos.max(iterable, *args)
: Devuelve el elemento más grande en un iterable o el más grande de dos o más argumentos.sum(iterable[, start])
: Suma los elementos de un iterable (como una lista o tupla) y devuelve el total. Se puede proporcionar un valor inicial opcional (start
) que se suma al resultado.
Ejemplos de Funciones Matemáticas Built-in:
valor_negativo = -10
valor_absoluto = abs(valor_negativo)
print(f"El valor absoluto de {valor_negativo} es: {valor_absoluto}")
potencia1 = pow(2, 5)
print(f"2 elevado a la 5 es: {potencia1}")
potencia_modulo = pow(10, 3, 7) # (10**3) % 7 = 1000 % 7 = 6
print(f"(10**3) % 7 es: {potencia_modulo}")
numero_a_redondear = 3.14159
redondeo_2_decimales = round(numero_a_redondear, 2)
print(f"{numero_a_redondear} redondeado a 2 decimales es: {redondeo_2_decimales}")
numeros = [3, 1, 4, 1, 5, 9, 2, 6]
minimo = min(numeros)
maximo = max(numeros)
print(f"El mínimo de la lista es: {minimo}")
print(f"El máximo de la lista es: {maximo}")
suma_de_numeros = sum(numeros)
print(f"La suma de los números es: {suma_de_numeros}")
suma_con_inicio = sum(numeros, 10)
print(f"La suma de los números con inicio en 10 es: {suma_con_inicio}")
Cuándo Usar las Funciones Built-in:
Estas funciones son ideales para operaciones matemáticas básicas y directas que no
requieren funcionalidades más avanzadas como funciones trigonométricas, logarítmicas,
etc. Para estas últimas, necesitaremos recurrir al módulo math
.
En el siguiente tema, exploraremos el poderoso **Módulo math
** de Python,
que amplía significativamente las capacidades matemáticas del lenguaje.
The Math Module
➕ El Módulo math
: Funciones Matemáticas Avanzadas
Para utilizar las funciones y constantes definidas en el módulo math
,
primero debes importarlo en tu script:
import math
Constantes Matemáticas en el Módulo math
:
math.pi
: El número pi (π), aproximadamente 3.14159.math.e
: La base de los logaritmos naturales (e), aproximadamente 2.71828.math.tau
: El número tau (τ), igual a 2π, aproximadamente 6.28318. (Introducido en Python 3.6)math.inf
: Infinito positivo de punto flotante.math.nan
: Un valor de "no es un número" (NaN) de punto flotante.
Funciones Numéricas en el Módulo math
:
math.ceil(x)
: Devuelve el entero más pequeño mayor o igual quex
.math.floor(x)
: Devuelve el entero más grande menor o igual quex
.math.trunc(x)
: Devuelve la parte entera dex
, eliminando la parte decimal.math.fabs(x)
: Devuelve el valor absoluto dex
(similar aabs()
, pero siempre devuelve un float).math.factorial(x)
: Devuelve el factorial dex
.math.gcd(a, b)
: Devuelve el máximo común divisor de los enterosa
yb
.math.exp(x)
: Devuelve $e^x$.math.log(x[, base])
: Devuelve el logaritmo dex
en la base especificada (si no se proporciona la base, devuelve el logaritmo natural).math.log10(x)
: Devuelve el logaritmo en base 10 dex
.math.sqrt(x)
: Devuelve la raíz cuadrada dex
.
Funciones Trigonométricas en el Módulo math
(los ángulos se asumen en
radianes):
math.sin(x)
: Devuelve el seno dex
.math.cos(x)
: Devuelve el coseno dex
.math.tan(x)
: Devuelve la tangente dex
.math.asin(x)
: Devuelve el arcoseno dex
.math.acos(x)
: Devuelve el arcocoseno dex
.math.atan(x)
: Devuelve el arcotangente dex
.math.degrees(x)
: Convierte el ángulox
de radianes a grados.math.radians(x)
: Convierte el ángulox
de grados a radianes.
Ejemplos de Uso del Módulo math
:
import math
radio = 5
area = math.pi * radio ** 2
print(f"El área de un círculo con radio {radio} es: {area}")
logaritmo_natural = math.log(10)
print(f"El logaritmo natural de 10 es: {logaritmo_natural}")
raiz_cuadrada = math.sqrt(16)
print(f"La raíz cuadrada de 16 es: {raiz_cuadrada}")
seno_de_pi_medio = math.sin(math.pi / 2)
print(f"El seno de pi/2 es: {seno_de_pi_medio}")
grados = 90
radianes = math.radians(grados)
print(f"{grados} grados en radianes son: {radianes}")
factorial_de_5 = math.factorial(5)
print(f"El factorial de 5 es: {factorial_de_5}")
maximo_comun_divisor = math.gcd(12, 18)
print(f"El máximo común divisor de 12 y 18 es: {maximo_comun_divisor}")
El módulo math
es una herramienta fundamental para cualquier tarea que
requiera cálculos matemáticos más allá de las operaciones básicas. Es importante
consultar la documentación oficial para conocer todas las funciones y constantes que
ofrece.
En el siguiente tema, veremos una referencia completa del módulo math
para
que tengas una visión general de todas sus capacidades.
Complete Math Module Reference
📚 Referencia Completa del Módulo math
A continuación, se presenta una lista más exhaustiva de las funciones y constantes
disponibles en el módulo math
de Python.
Constantes:
math.pi
: ($\pi$) La relación entre la circunferencia de un círculo y su diámetro.math.e
: ($e$) La base de los logaritmos naturales.math.tau
: ($\tau$) Igual a $2\pi$.math.inf
: Infinito positivo de punto flotante.math.nan
: Un valor de "no es un número" (NaN) de punto flotante.
Funciones Numéricas:
math.ceil(x)
: Devuelve el techo dex
, el entero más pequeño mayor o igual quex
.math.copysign(x, y)
: Devuelve un float con la magnitud (valor absoluto) dex
pero el signo dey
.math.fabs(x)
: Devuelve el valor absoluto dex
.math.factorial(x)
: Devuelve el factorial dex
. Genera unValueError
six
no es entero o es negativo.math.floor(x)
: Devuelve el suelo dex
, el entero más grande menor o igual quex
.math.fmod(x, y)
: Devuelve el resto de la división dex
pory
. El resultado tiene el signo dex
.math.frexp(x)
: Devuelve la mantisa y el exponente dex
como el par(m, e)
dondex == m * 2**e
y0.5 <= abs(m) < 1
.math.fsum(iterable)
: Devuelve una suma de punto flotante precisa de los valores en el iterable. Evita la pérdida de precisión al sumar muchos números pequeños.math.gcd(a, b)
: Devuelve el máximo común divisor de los enterosa
yb
.math.isclose(a, b, *, rel_tol=1e-09, abs_tol=0.0)
: DevuelveTrue
si los valoresa
yb
están cerca el uno del otro, yFalse
en caso contrario. Útil para comparar floats.math.isfinite(x)
: DevuelveTrue
six
no es ni infinito ni NaN, yFalse
en caso contrario.math.isinf(x)
: DevuelveTrue
six
es infinito positivo o negativo, yFalse
en caso contrario.math.isnan(x)
: DevuelveTrue
six
es un NaN, yFalse
en caso contrario.math.isqrt(n)
: Devuelve la parte entera de la raíz cuadrada de un entero no negativon
.math.ldexp(x, i)
: Devuelvex * 2**i
. Es esencialmente la inversa demath.frexp()
.math.modf(x)
: Devuelve las partes fraccionaria y entera dex
. Ambos resultados llevan el signo dex
y son floats.math.pow(x, y)
: Devuelvex
elevado a la potencia dey
.math.remainder(x, y)
: Devuelve el resto de estilo IEEE 754 dex
con respecto ay
.math.round(x[, n])
: Redondeax
an
decimales. Sin
se omite o esNone
, devuelve el entero más cercano ax
.math.trunc(x)
: Devuelve el valor dex
truncado a un entero (hacia cero).
Funciones Logarítmicas y Exponenciales:
math.exp(x)
: Devuelve $e^x$.math.expm1(x)
: Devuelve $e^x - 1$. Útil para pequeñas valores dex
donde la precisión deexp(x) - 1
podría perderse.math.log(x[, base])
: Devuelve el logaritmo dex
en la base dada. Si la base no se especifica, devuelve el logaritmo natural (base e) dex
.math.log1p(x)
: Devuelve el logaritmo natural de1+x
. Útil para valores dex
cercanos a cero.math.log10(x)
: Devuelve el logaritmo en base 10 dex
.math.log2(x)
: Devuelve el logaritmo en base 2 dex
.math.pow(x, y)
: (Ya mencionada en funciones numéricas)math.sqrt(x)
: Devuelve la raíz cuadrada dex
.
Funciones Trigonométricas:
math.acos(x)
: Devuelve el arco coseno dex
, en radianes.math.asin(x)
: Devuelve el arco seno dex
, en radianes.math.atan(x)
: Devuelve el arco tangente dex
, en radianes.math.atan2(y, x)
: Devuelveatan(y / x)
, en radianes, pero considera el signo de ambosx
ey
.math.cos(x)
: Devuelve el coseno dex
radianes.math.hypot(x, y)
: Devuelve la norma euclidiana, $\sqrt{x^2 + y^2}$.math.sin(x)
: Devuelve el seno dex
radianes.math.tan(x)
: Devuelve la tangente dex
radianes.math.degrees(x)
: Convierte el ángulox
de radianes a grados.math.radians(x)
: Convierte el ángulox
de grados a radianes.
Funciones Hiperbólicas:
math.acosh(x)
: Devuelve el arco coseno hiperbólico dex
.math.asinh(x)
: Devuelve el arco seno hiperbólico dex
.math.atanh(x)
: Devuelve el arco tangente hiperbólico dex
.math.cosh(x)
: Devuelve el coseno hiperbólico dex
.math.sinh(x)
: Devuelve el seno hiperbólico dex
.math.tanh(x)
: Devuelve la tangente hiperbólica dex
.
Funciones Especiales:
math.erf(x)
: Devuelve la función de error enx
.math.erfc(x)
: Devuelve la función de error complementaria enx
.math.gamma(x)
: Devuelve la función Gamma enx
.math.lgamma(x)
: Devuelve el logaritmo natural del valor absoluto de la función Gamma enx
.
Esta referencia te proporciona una visión general de la riqueza de funcionalidades
matemáticas que el módulo math
pone a tu disposición en Python. ¡Explora la
documentación oficial para obtener detalles más profundos sobre cada función!
Con esto, hemos completado nuestra exploración del módulo math
. ¿Tienes
alguna pregunta o te gustaría repasar algún concepto antes de que pasemos a un nuevo
tema?
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias