Module math de Python

Module math de PythonFournit un grand nombre de fonctions mathématiques couramment utilisées, qui permettent d'accomplir :

  • Calcul de fonctions trigonométriques (sin / cos / tan)
  • Opérations logarithmiques et exponentielles (log / exp / pow)
  • Arrondi et troncature (ceil / floor / trunc)
  • Combinaisons, permutations et factorielles (comb / perm / factorial)
  • Calcul de distance et calcul géométrique (dist / hypot / sqrt)

C'est l'une des bibliothèques standard les plus couramment utilisées pour les opérations mathématiques en Python.

Il est alors nécessaire de l'utiliser.mathModule terminé.

mathLes fonctions du module renvoient des nombres à virgule flottante, sauf indication contraire explicite.

Si vous devez calculer des nombres complexes, veuillez utilisercmathles fonctions du même nom dans un module.

Pour utiliser les fonctions mathématiques, vous devez d'abord les importer :

import math

Afficher le contenu du module math :

>>> import math
>>> dir(math)
['__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'comb', 'copysign', 'cos', 'cosh', 'degrees', 'dist', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'isqrt', 'lcm', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'nextafter', 'perm', 'pi', 'pow', 'prod', 'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc', 'ulp']

Pourquoi utiliser le module math ?

Bien que Python soit fourni avec de nombreux opérateurs de base (tels que+、-、*、/), mais pour des calculs mathématiques plus complexes, tels que :

  • extraire la racine carrée
  • Fonctions trigonométriques
  • logarithme népérien
  • Gestion de la précision des nombres à virgule flottante

Exemples d'utilisation du module math de Python

import math

print(math.sqrt(16))      # 4.0
print(math.pow(2, 3))     # 8.0
print(math.ceil(4.2))     # 5
print(math.floor(4.9))    # 4
print(math.sin(math.pi/2))# 1.0

Le résultat de sortie est:

4.0
8.0
5
4
1.0

constantes du module math

constant décrire
math.e Renvoie le nombre d'Euler (2.7182...)
math.inf Renvoie un nombre à virgule flottante représentant l'infini positif.
math.nan Renvoie une valeur à virgule flottante NaN (pas un nombre).
math.pi π désigne généralement pi. Pi (3.1415...)
math.tau La constante mathématique τ = 6.283185..., à la précision disponible. Tau est une constante du cercle égale à 2π, le rapport entre la circonférence d'un cercle et son rayon.

Fonctions du module math

fonction Description
math.acos(x) Renvoie l'arccosinus de x, le résultat étant compris entre 0 et pi.
math.acosh(x) Renvoie le cosinus hyperbolique inverse de x.
math.asin(x) Renvoie l'arcsinus de x, le résultat étant compris entre -pi/2 et pi/2.
math.asinh(x) Renvoie le sinus hyperbolique inverse de x.
math.atan(x) Renvoie l'arc tangente de x, avec un résultat compris entre -pi/2 et pi/2.
math.atan2(y, x) Renvoie l'arc tangente des valeurs de coordonnées X et Y données, avec un résultat compris entre -pi et pi.
math.atanh(x) Renvoie la tangente hyperbolique inverse de x.
math.ceil(x) Arrondit x à l'entier le plus proche par excès.
math.comb(n, k) Renvoie le nombre total de façons de choisir k éléments parmi n éléments sans répétition et sans ordre.
math.copysign(x, y) Renvoie un nombre à virgule flottante basé sur la valeur absolue de x et le signe de y.
math.cos() Renvoie le cosinus de x radians.
math.cosh(x) Renvoie la valeur du cosinus hyperbolique de x.
math.degrees(x) Convertit l'angle x de radians en degrés.
math.dist(p, q) Renvoie la distance euclidienne entre les points p et q, donnés sous forme de séquence de coordonnées (ou d'un itérable). Les deux points doivent avoir la même dimension.
math.erf(x) Renvoie la fonction d'erreur d'un nombre.
math.erfc(x) Renvoie la fonction d'erreur complémentaire en x.
math.exp(x) Renvoie e à la puissance x.x, où e = 2.718281... est la base du logarithme naturel.
math.expm1() Renvoie Ex- 1, e à la puissance x, Ex, où e = 2.718281... est la base du logarithme naturel. Ceci est généralement plus précis que math.e ** x ou pow(math.e, x).
math.fabs(x) Renvoie la valeur absolue de x.
math.factorial(x) Renvoie la factorielle de x. Si x n'est pas un entier ou est négatif, alors une ValueError sera levée.
math.floor() Arrondit un nombre à l'entier inférieur le plus proche.
math.fmod(x, y) Renvoie le reste de x/y.
math.frexp(x) Renvoie la mantisse et l'exposant de x sous forme de paire (m, e). m est un nombre à virgule flottante, e est un entier, de sorte que x == m * 2**e exactement. Si x vaut zéro, renvoie (0.0, 0) ; sinon, 0.5 <= abs(m) < 1.
math.fsum(iterable) Renvoie la somme des éléments d'un itérable (tuple, tableau, liste, etc.), sous forme de valeur à virgule flottante.
math.gamma(x) Renvoie la valeur de la fonction Gamma en x.
math.gcd() Renvoie le plus grand commun diviseur des paramètres entiers donnés.
math.hypot() Renvoie la norme euclidienne, sqrt(sum(x**2 for x in coordinates)). C'est la longueur du vecteur allant de l'origine au point donné par les coordonnées.
math.isclose(a,b) Vérifie si deux valeurs sont proches l'une de l'autre ; si les valeurs de a et b sont relativement proches, renvoie True, sinon renvoie False.
math.isfinite(x) Détermine si x est fini ; si x n'est ni l'infini ni NaN, renvoie True, sinon renvoie False.
math.isinf(x) Détermine si x est l'infini. Si x est l'infini positif ou négatif, renvoie True ; sinon, renvoie False.
math.isnan() Détermine si le nombre est NaN. Si x est NaN (pas un nombre), renvoie True ; sinon renvoie False.
math.isqrt() Arrondit la racine carrée vers le bas à l'entier le plus proche.
math.ldexp(x, i) Renvoie x * (2**i). Il s'agit essentiellement d'une fonction.La fonction inverse de math.frexp().
math.lgamma() Renvoie le logarithme népérien de la fonction gamma à la valeur absolue de x.
math.log(x[, base]) Avec un seul paramètre, renvoie le logarithme népérien de x (base e).
math.log10(x) Renvoie le logarithme en base 10 de x.
math.log1p(x) Renvoie le logarithme népérien (base e) de 1+x.
math.log2(x) Renvoie le logarithme en base 2 de x.
math.perm(n, k=None) Renvoie le nombre total de façons de choisir k éléments parmi n éléments sans répétition et avec ordre.
math.pow(x, y) Renvoie x élevé à la puissance y.
math.prod(iterable) Calcule le produit de tous les éléments de l'itérable.
math.radians(x) Convertit l'angle x de degrés en radians.
math.remainder(x, y) Renvoie le reste de style IEEE 754 de x divisé par y.
math.sin(x) Renvoie le sinus de x radians.
math.sinh(x) Renvoie la valeur du sinus hyperbolique de x.
math.sqrt(x) Renvoie la racine carrée de x.
math.tan(x) Renvoie la tangente de x radians.
math.tanh(x) Renvoie la tangente hyperbolique de x.
math.trunc(x) Renvoie la partie entière tronquée de x, c'est-à-dire renvoie la partie entière et supprime la partie fractionnaire.
math.cbrt(x) Renvoie la racine cubique de x.
math.exp2(x)
math.lcm(*integers) Renvoie le plus petit commun multiple de plusieurs entiers.
math.modf(x) Renvoie la partie fractionnaire et la partie entière de x, le résultat est un tuple (fractionnaire, entier).
math.nextafter(x, y[, steps]) Renvoie la valeur après avoir avancé d'un nombre spécifié de pas en virgule flottante de x vers y.
math.sumprod(p, q) Renvoie la somme des produits des éléments correspondants de deux itérables.
math.ulp(x) Renvoie la plus petite unité significative en virgule flottante de x (Unit in the Last Place).

Notes de compatibilité des versions

Les fonctions suivantes sont nouvelles dans Python 3.8+ / 3.9+ / 3.11+ :

  • math.comb():Python 3.8+
  • math.perm():Python 3.8+
  • math.lcm():Python 3.9+
  • math.cbrt():Python 3.11+
  • math.exp2():Python 3.11+
  • math.sumprod():Python 3.12+
Autres extensions