Python3 Fonction round()

Python3 数字Nombres en Python3


Description

round()La méthode renvoie la valeur arrondie du nombre à virgule flottante x. Pour être précis, la valeur retenue sera conservée du côté le plus proche du chiffre précédent (arrondi au pair).

Si une haute précision est requise, cette fonction n'est pas recommandée.


Syntaxe

Voici la syntaxe de la méthode round() :

round( x [, n]  )

Parameters

  • x -- Une expression numérique.
  • n -- Indique le nombre de chiffres après la virgule auquel x doit être arrondi ; la valeur par défaut est 0.

Valeur de retour

Renvoie la valeur arrondie du nombre à virgule flottante x.

Exemples

Voici un exemple d'utilisation de la méthode round() :

Exemples

#!/usr/bin/python3

print ("round(70.23456) : ", round(70.23456))
print ("round(56.659,1) : ", round(56.659,1))
print ("round(80.264, 2) : ", round(80.264, 2))
print ("round(100.000056, 3) : ", round(100.000056, 3))
print ("round(-100.000056, 3) : ", round(-100.000056, 3))

La sortie de l'exemple ci-dessus après exécution est :

round(70.23456) :  70
round(56.659,1) :  56.7
round(80.264, 2) :  80.26
round(100.000056, 3) :  100.0
round(-100.000056, 3) :  -100.0

Jetez un œil à un exemple donné sur le site officiel :

>>> round(2.675, 2) 
2.67

Selon notre raisonnement, le résultat renvoyé devrait être 2.68, mais le résultat est 2.67. Pourquoi ?

Cela est lié à la précision des nombres à virgule flottante. Nous savons que, dans une machine, les nombres à virgule flottante peuvent ne pas être représentés exactement, car après conversion en une chaîne de 1 et de 0, ils peuvent avoir un nombre infini de chiffres, et la machine les a déjà tronqués. Ainsi, le nombre 2.675 stocké dans la machine est un peu plus petit que le nombre réel. Cette infime différence le rend un peu plus proche de 2.67, donc lorsqu'on conserve deux décimales, il est arrondi à 2.67.

Python3 数字Nombres en Python3

Autres extensions