Función Python math.cbrt()

Python math 模块Módulo math de Python


En los cálculos matemáticos,la raíz cúbicaes una operación muy importante. A diferencia de la raíz cuadrada, la raíz cúbica puede manejar números negativos, porque el cubo de un número negativo sigue siendo negativo.

math.cbrt()es una función introducida en Python 3.11, diseñada específicamente para calcular laraíz cúbica (cube root). Devuelve la raíz cúbica de x, es decir, el valor de y que satisface y³ = x.

Definición de la palabra: cbrtes la abreviatura de "cube root", que significa "raíz cúbica".


Sintaxis básica y parámetros

math.cbrt()es una función estática del módulo math; para usarla, primero debe importarse el módulo math.

Formato de sintaxis

import math

math.cbrt(x)

Descripción de parámetros

  • Parámetro: x
    • Tipo: numérico (entero o flotante)
    • Descripción: el número del cual se calculará la raíz cúbica. Puede ser cualquier número real, incluidos los negativos.

Valor de retorno

  • Devuelvexla raíz cúbica de x, con un tipo de retorno flotante.
  • Si x es 0, devuelve 0.
  • Si x es negativo, devuelve la raíz cúbica del número negativo.

Ejemplos

Dominemos por completomath.cbrt()su uso mediante ejemplos.

Ejemplo 1: Uso básico - Calcular la raíz cúbica de números positivos

Ejemplo

import math

# Calcular la raíz cúbica de algunos números comunes
print(Raíz cúbica de 8:, math.cbrt(8))      # 2.0, porque 2³ = 8
print(Raíz cúbica de 27:, math.cbrt(27))    # 3.0, porque 3³ = 27
print(Raíz cúbica de 1000:, math.cbrt(1000)) # 10.0, porque 10³ = 1000
print(Raíz cúbica de 2:, math.cbrt(2))      # Aproximadamente 1.2599

# Raíz cúbica de 0
print(Raíz cúbica de 0:, math.cbrt(0))      # 0.0

Resultado de la ejecución:

8 的立方根: 2.0
27 的立方根: 3.0
1000 的立方根: 10.0
2 的立方根: 1.2599210498948732
0 的立方根: 0.0

Ejemplo 2: Calcular la raíz cúbica de números negativos

math.cbrt()Su gran ventaja es que maneja correctamente los números negativos, mientras quemath.sqrt()da error con números negativos.

Ejemplo

import math

# Calcular la raíz cúbica de números negativos
print(Raíz cúbica de -8:, math.cbrt(-8))    # -2.0, porque (-2)³ = -8
print(Raíz cúbica de -27:, math.cbrt(-27))  # -3.0, porque (-3)³ = -27
print(Raíz cúbica de -1:, math.cbrt(-1))    # -1.0

# Comparación: sqrt no puede manejar números negativos
try:
    print(math.sqrt(-8))
except ValueError as e:
    print(math.sqrt(-8) da error:, e)

Resultado de la ejecución:

-8 的立方根: -2.0
-27 的立方根: -3.0
-1 的立方根: -1.0
math.sqrt(-8) 报错: math domain error

Ejemplo 3: Verificar las propiedades de la raíz cúbica

Usa la raíz cúbica para verificar la propiedad matemática: el cubo de la raíz cúbica de a es igual a a.

Ejemplo

import math

# Verificar la propiedad de la raíz cúbica: cbrt(x)³ = x
test_values = [8, -8, 27, -27, 0.125, -0.125]

for val in test_values:
    cube_root = math.cbrt(val)
    result = cube_root ** 3
    print(fcbrt({val}) = {cube_root}, su cubo = {result})

# Problema de precisión de números de punto flotante
print("\nVerificación de precisión:)
print("cbrt(5)³ =", math.cbrt(5) ** 3)  # Debería ser igual a 5

Resultado de la ejecución:

cbrt(8) = 2.0, 其立方 = 8.0
cbrt(-8) = -2.0, 其立方 = -8.0
cbrt(27) = 3.0, 其立方 = 27.0
cbrt(-27) = -3.0, 其立方 = -27.0
cbrt(0.125) = 0.5, 其立方 = 0.125
cbrt(-0.125) = -0.5, 其立方 = -0.125

精度验证:
cbrt(5)³ = 5.0

Ejemplo 4: Aplicación práctica - Resolver ecuaciones cúbicas

La raíz cúbica se puede utilizar para resolver ecuaciones cúbicas. Por ejemplo, al resolver x³ = 27, se obtiene x = cbrt(27) = 3.

Ejemplo

import math

# Problema real: calcular la longitud del lado a partir del volumen
# Supongamos una caja cúbica con un volumen de 1000 metros cúbicos
# Calcular la longitud del lado
volume = 1000
side_length = math.cbrt(volume)
print(fUn cubo con un volumen de {volume} metros cúbicos tiene una longitud de lado de: {side_length:.4f} metros)

# Aplicación física: calcular el radio de una esfera
# Dado el volumen de la esfera V = (4/3)πr³, calcular el radio r
# r = cbrt(V * 3 / (4 * π))
sphere_volume = 904.78  # Volumen aproximado de la esfera
radius = math.cbrt(sphere_volume * 3 / (4 * math.pi))
print(fUna esfera con un volumen de {sphere_volume:.2f} tiene un radio aproximado de: {radius:.4f})

Resultado de la ejecución:

体积为 1000 立方米的正方体,边长为: 10.0000 米
体积为 904.78 的球,半径约为: 6.0000

Comparación con otros métodos

Enmath.cbrt()Antes de que apareciera, normalmente usábamos el operador de exponenciación para calcular la raíz cúbica:

Ejemplo

import math

x = 27

# Método 1: Usar math.cbrt() (recomendado)
result1 = math.cbrt(x)

# Método 2: Usar la operación de exponenciación x ** (1/3)
result2 = x ** (1/3)

# Método 3: Usar la función pow()
result3 = pow(x, 1/3)

print(f"math.cbrt({x}) = {result1}")
print(f"{x} ** (1/3) = {result2}")
print(f"pow({x}, 1/3) = {result3}")

# Caso de números negativos
y = -8
print(f"\nPara el número negativo {y}:)
print(f"math.cbrt({y}) = {math.cbrt(y)}")
print(f"{y} ** (1/3) = {y ** (1/3)}")  # Puede producir números complejos

Resultado de la ejecución:

math.cbrt(27) = 3.0
27 ** (1/3) = 2.9999999999999996
pow(27, 1/3) = 2.9999999999999996

对于负数 -8:
math.cbrt(-8) = -2.0
-8 ** (1/3) = -(8**(1/3)) = -2.0  # 由于运算符优先级,结果正确但不够直观

Explicación:math.cbrt()es la mejor opción para calcular la raíz cúbica, porque:

  1. Semántica clara y código legible
  2. Manejo correcto de números negativos
  3. Mayor precisión, evita los problemas de precisión de las operaciones con números de punto flotante

Notas

  • math.cbrt()es una función que solo está disponible en Python 3.11+, no se puede usar en versiones anteriores de Python.
  • Para versiones anteriores, se puede usarx ** (1/3)opow(x, 1/3)en su lugar.
  • Esta función solo es aplicable a números reales, no admite números complejos. Si necesita raíces cúbicas de números complejos, use elcmathmódulo.

Python math 模块Módulo math de Python

Otras extensiones