HOWTO · Python
Utiliser Pi en Python
Dans ce tutoriel, nous utiliserons la valeur pi en Python
Sur cette page
Utilisez math.pi de la bibliothèque standard de Python lorsque vous avez besoin d’une approximation numérique de pi. Si un calcul utilise déjà des tableaux NumPy, numpy.pi convient à ce contexte ; pour les expressions algébriques qui doivent rester symboliques, utilisez sympy.pi. Ce sont des constantes, et non des fonctions à appeler. Les exemples ci-dessous montrent dans quels cas chaque forme est utile, en quoi la conversion d’un angle diffère de l’obtention de pi, et pourquoi une approximation écrite à la main est surtout pédagogique.
Accéder à pi avec la constante math.pi de Python
Le module math de la bibliothèque standard est le choix le plus simple pour les calculs numériques courants et ne nécessite aucun paquet tiers. Importez-le, puis lisez directement math.pi. Cette valeur est une approximation en virgule flottante : les calculs utilisent donc une précision finie, et non la constante mathématique exacte.
Exécutez cet exemple. Le code et les libellés ou résultats affichés dans cette section restent en anglais :
import math
radius = 5
area = math.pi * radius**2
print(f"Area: {area}")
Area: 78.53981633974483
La formule de l’aire d’un cercle, πr², est utilisée ici. Le résultat est une approximation numérique, car math.pi est une valeur en virgule flottante.
N’écrivez pas math.pi() : les parenthèses tenteraient d’appeler une valeur qui n’est pas une fonction. Pour la plupart des scripts qui ont besoin de pi sous forme numérique, math.pi est le choix direct.
Utiliser la constante pi de NumPy pour les calculs sur des tableaux
Lorsque le calcul environnant utilise déjà des tableaux NumPy, sa constante pi s’intègre facilement aux opérations de NumPy. Importez NumPy sous le nom np, puis utilisez np.pi (également appelée numpy.pi) sans parenthèses. Par exemple, vous pouvez multiplier un tableau d’angles exprimés en degrés par np.pi / 180 pour convertir ses valeurs en radians avant d’appliquer une fonction trigonométrique de NumPy.
Cet exemple convertit trois valeurs en degrés en radians au cours d’un seul calcul sur un tableau. Le code et les libellés ou résultats affichés dans cette section restent en anglais :
import numpy as np
degrees = np.array([0, 90, 180])
radians = degrees * np.pi / 180
print(radians)
[0. 1.57079633 3.14159265]
NumPy est une dépendance tierce : il doit donc être installé dans l’environnement qui exécute le script. Pour un calcul scalaire unique qui n’utilise pas NumPy par ailleurs, la constante de la bibliothèque standard math.pi évite cette dépendance. numpy.pi représente la même constante numérique familière ; son avantage pratique tient à sa cohérence avec le code utilisant des tableaux, et non à une précision différente.
Utiliser pi de SymPy pour les mathématiques symboliques
Utilisez SymPy lorsqu’une expression doit rester symbolique pour l’algèbre, le calcul différentiel ou intégral, ou les manipulations de formes exactes, plutôt que de devenir immédiatement un calcul en virgule flottante. Avec from sympy import pi, symbols, l’expression pi * x**2 conserve pi et le symbole x sous forme symbolique. SymPy peut ensuite manipuler l’expression comme un objet mathématique ; sa conversion en approximation numérique constitue une étape distincte.
C’est différent de math.pi et de numpy.pi, qui sont des valeurs numériques en virgule flottante. SymPy est également une dépendance tierce. Choisissez sympy.pi lorsque le traitement symbolique est nécessaire, plutôt que d’importer SymPy uniquement pour obtenir une valeur numérique de pi.
Convertir des degrés en radians avec math.radians
math.radians(degrees) convertit en radians un angle exprimé en degrés. Par exemple, math.radians(90) donne une approximation en virgule flottante de π/2, tandis que math.radians(180) donne une approximation de π. Cette relation est utile pour convertir un angle, mais ce n’est pas la méthode habituelle pour obtenir pi : utilisez math.pi lorsque vous avez besoin de la valeur elle-même.
Exécutez cet exemple. Le code et les libellés ou résultats affichés dans cette section restent en anglais :
import math
angle_degrees = 90
angle_radians = math.radians(angle_degrees)
print(f"Radians: {angle_radians}")
Radians: 1.5707963267948966
Pour une série d’angles dans un flux de travail NumPy existant, NumPy propose aussi une conversion degrés-radians adaptée aux tableaux. Pour un angle scalaire, math.radians est un choix clair de la bibliothèque standard.
Utiliser une approximation personnalisée de pi dans un exemple pédagogique
Une courte approximation décimale peut aider à montrer comment utiliser une constante dans une formule. Le code et les libellés ou résultats affichés dans cette section restent en anglais :
PI = 3.141592653589793
diameter = 10
circumference = PI * diameter
print(f"Circumference: {circumference}")
Circumference: 31.41592653589793
Les chiffres indiqués restent une approximation finie, et les recopier à la main n’apporte rien dans les tâches courantes. Préférez math.pi pour les calculs numériques habituels ; gardez une valeur personnalisée pour les leçons sur les formules, les constantes ou la précision des approximations.