Fonction math.cbrt() de Python

Python math 模块Module math de Python


Dans les calculs mathématiques,la racine cubiqueest une opération très importante. Contrairement à la racine carrée, la racine cubique peut gérer des nombres négatifs, car le cube d'un nombre négatif est toujours négatif.

math.cbrt()est une fonction introduite dans Python 3.11, spécifiquement utilisée pour calculer laracine cubiqued'un nombre. Elle renvoie la racine cubique de x, c'est-à-dire la valeur y satisfaisant y³ = x.

Définition du terme: cbrtest l'abréviation de 'cube root', signifiant 'racine cubique'.


Syntaxe de base et paramètres

math.cbrt()est une fonction statique du module math. Vous devez importer le module math avant de l'utiliser.

Format de syntaxe

import math

math.cbrt(x)

Description du paramètre

  • Paramètre: x
    • Type : numérique (entier ou float)
    • Description : le nombre dont la racine cubique doit être calculée. Il peut s'agir de n'importe quel nombre réel, y compris de nombres négatifs.

Valeur de retour

  • Renvoiexla racine cubique de x, et le type de retour est float.
  • Si x vaut 0, elle renvoie 0.
  • Si x est négatif, elle renvoie la racine cubique du nombre négatif.

Exemples

Maîtrisons parfaitementmath.cbrt()l'utilisation de.

Exemple 1 : Utilisation de base - Calculer la racine cubique d'un nombre positif

Exemple

import math

# Calculer les racines cubiques de quelques nombres courants
print("Racine cubique de 8 :", math.cbrt(8))      # 2.0, car 2³ = 8
print("Racine cubique de 27 :", math.cbrt(27))    # 3.0, car 3³ = 27
print("Racine cubique de 1000 :", math.cbrt(1000)) # 10.0, car 10³ = 1000
print("Racine cubique de 2 :", math.cbrt(2))      # Environ 1.2599

# Racine cubique de 0
print("Racine cubique de 0 :", math.cbrt(0))      # 0.0

Sortie :

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

Exemple 2 : Calculer la racine cubique d'un nombre négatif

math.cbrt()Sa grande force est qu'il peut gérer correctement les nombres négatifs, tandis quemath.sqrt()lèvera une erreur pour les nombres négatifs.

Exemple

import math

# Calculer les racines cubiques de nombres négatifs
print("Racine cubique de -8 :", math.cbrt(-8))    # -2.0, car (-2)³ = -8
print("Racine cubique de -27 :", math.cbrt(-27))  # -3.0, car (-3)³ = -27
print("Racine cubique de -1 :", math.cbrt(-1))    # -1.0

# Comparaison : sqrt ne peut pas gérer les nombres négatifs
try:
    print(math.sqrt(-8))
except ValueError as e:
    print("erreur de math.sqrt(-8) :", e)

Sortie :

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

Exemple 3 : Vérifier les propriétés de la racine cubique

Utilisez la racine cubique pour vérifier une propriété mathématique : le cube de la racine cubique de a est égal à a lui-même.

Exemple

import math

# Vérifier la propriété de la racine cubique : 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(f"cbrt({val}) = {cube_root}, son cube = {result}")

# Problème de précision des nombres à virgule flottante
print("\nVérification de la précision :")
print("cbrt(5)³ =", math.cbrt(5) ** 3)  # Devrait être égal à 5

Sortie :

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

Exemple 4 : application pratique - résolution d'une équation cubique

Les racines cubiques peuvent être utilisées pour résoudre des équations cubiques. Par exemple, résoudre x³ = 27 donne x = cbrt(27) = 3.

Exemple

import math

# Problème pratique : trouver la longueur du côté à partir du volume
# Supposons une boîte cubique d'un volume de 1000 mètres cubes
# Trouver la longueur du côté
volume = 1000
side_length = math.cbrt(volume)
print(f"Un cube d'un volume de {volume} mètres cubes a une longueur de côté : {side_length:.4f} mètres")

# Application de physique : trouver le rayon d'une sphère
# Étant donné le volume d'une sphère V = (4/3)πr³, trouver le rayon r
# r = cbrt(V * 3 / (4 * π))
sphere_volume = 904.78  # Approximer le volume de la sphère
radius = math.cbrt(sphere_volume * 3 / (4 * math.pi))
print(f"Une sphère de volume {sphere_volume:.2f} a un rayon approximatif : {radius:.4f}")

Sortie :

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

Comparaison avec d'autres méthodes

Dansmath.cbrt()Avant son apparition, nous utilisions généralement l'opérateur d'exponentiation pour calculer les racines cubiques :

Exemple

import math

x = 27

# Méthode 1 : Utilisation de math.cbrt() (recommandée)
result1 = math.cbrt(x)

# Méthode 2 : Utilisation de l'exponentiation x ** (1/3)
result2 = x ** (1/3)

# Méthode 3 : Utilisation de la fonction 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}")

# Le cas des nombres négatifs
y = -8
print(f"\nPour le nombre négatif {y} :")
print(f"math.cbrt({y}) = {math.cbrt(y)}")
print(f"{y} ** (1/3) = {y ** (1/3)}")  # Peut produire des nombres complexes

Sortie :

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  # 由于运算符优先级,结果正确但不够直观

Explication:math.cbrt()est le meilleur choix pour calculer les racines cubiques car :

  1. Sémantique claire, code facile à lire
  2. Gère correctement les nombres négatifs
  3. Précision plus élevée, évitant les problèmes de précision des opérations en virgule flottante

Notes

  • math.cbrt()est une fonction disponible uniquement à partir de Python 3.11+, et les versions plus anciennes de Python ne peuvent pas l’utiliser.
  • Pour les versions plus anciennes, vous pouvez utiliserx ** (1/3)oupow(x, 1/3)à la place.
  • Cette fonction ne s’applique qu’aux nombres réels et ne prend pas en charge les nombres complexes. Pour les racines cubiques complexes, veuillez utilisercmathmodule.

Python math 模块Module math de Python

Autres extensions