Arrondir les nombres aux chiffres significatifs en Python
Lors de l'affichage de nombres à virgule flottante dans une interface utilisateur, il peut être souhaitable de les arrondir à un nombre spécifié de chiffres significatifs. Voici comment y parvenir à l'aide des fonctions intégrées et du code personnalisé de Python.
Utilisation d'exposants négatifs
Pour arrondir des entiers à des puissances spécifiques de 10, des exposants négatifs peuvent être utilisés . Par exemple, pour arrondir 1234 au millier le plus proche, vous pouvez utiliser :
round(1234, -3)
Cela donne 1000,0.
Fonction personnalisée pour l'arrondi
Pour arrondir les nombres à virgule flottante à un nombre spécifique de chiffres significatifs, une fonction personnalisée peut être définie. Le code suivant définit une fonction appelée round_to_1 qui arrondit un nombre à un chiffre significatif :
from math import log10, floor def round_to_1(x): return round(x, -int(floor(log10(abs(x)))))
Ici, la fonction log10 est utilisée pour déterminer l'ordre de grandeur de x. La partie exposant du résultat est arrondie à l'aide du plancher, et la négation de cette valeur est transmise à la fonction d'arrondi, arrondissant effectivement à cette puissance de 10.
Exemples d'utilisation
La fonction round_to_1 peut être utilisée pour arrondir les nombres comme suit :
round_to_1(0.0232) # returns 0.02 round_to_1(1234243) # returns 1000000.0 round_to_1(13) # returns 10.0 round_to_1(4) # returns 4.0 round_to_1(19) # returns 20.0
Remarque :
Si le nombre arrondi est supérieur à 1, il peut doit être converti en un entier.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!