Notation scientifique en Python

Manav Narula 30 janvier 2023
  1. Utiliser la fonction format() pour représenter des valeurs dans la notation scientifique en Python
  2. Utiliser les fstrings pour représenter les valeurs en notation scientifique en Python
  3. Utilisez la fonction numpy.format_float_scientific() pour représenter les valeurs en notation scientifique
Notation scientifique en Python

La notation scientifique est utilisée pour représenter des nombres très grands ou très petits de manière compacte et compréhensible. Cette notation est également utilisée en programmation ; par exemple, 6000000 peut être représenté par 6E+6. De la même façon, 0.000006 peut être représenté par 6E-6.

Dans ce tutoriel, nous allons discuter de la façon d’utiliser de telles notations scientifiques en Python.

Utiliser la fonction format() pour représenter des valeurs dans la notation scientifique en Python

La fonction de formatage est utilisée pour formater des chaînes de caractères dans un format spécifique. Nous pouvons utiliser cette fonction pour convertir les grandes ou petites valeurs flottantes dans leur format exponentiel respectif, comme indiqué ci-dessous :

no1 = float(5800000.00000)
no2 = float(0.0000058)
print(format(no1, ".1E"))
print(format(no2, ".1E"))

Production :

5.8E+06
5.8E-06

Ici .1E est le modèle de formatage spécifié. E indique la notation exponentielle pour imprimer la valeur en notation scientifique, et .1 précise qu’il doit y avoir un chiffre après la décimale.

Utiliser les fstrings pour représenter les valeurs en notation scientifique en Python

En Python 3.6 et plus, nous pouvons utiliser des fstrings pour formater les chaînes de caractères. Cette méthode est considérée comme plus précise et moins sujette aux erreurs. Elle améliore la lisibilité du code par rapport à la fonction traditionnelle format(). Les fstrings peuvent aider à la représentation, comme indiqué ci-dessous.

no1 = float(5800000.00000)
no2 = float(0.0000058)
print(f"{no1:.1E}")
print(f"{no2:.1E}")

Production :

5.8E+06
5.8E-06

Notez que le modèle de format est le même que celui de la méthode ci-dessus.

Utilisez la fonction numpy.format_float_scientific() pour représenter les valeurs en notation scientifique

Le module NumPy en Python a une fonction format_float_scientific() qui peut être utilisée pour formater une valeur flottante à sa notation scientifique.

Nous pouvons utiliser le paramètre precision pour spécifier le nombre total de chiffres décimaux et le paramètre exp_digits pour dire combien de chiffres sont nécessaires dans la notation exponentielle. Les autres paramètres disponibles sont le sign, le unique, et le trim, qui offrent plus de personnalisations.

Le résultat final renvoyé par cette fonction est une chaîne de caractères.

import numpy as np

no1 = float(5800000.00000)
no2 = float(0.0000058)

print(np.format_float_scientific(no1, precision=1, exp_digits=3))
print(np.format_float_scientific(no2, precision=2, exp_digits=3))

Production :

5.8e+006
5.8e-006
Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Article connexe - Python String