Die Funktion round () gibt eine Gleitkommazahl zurück, die auf die angegebene Anzahl von Dezimalstellen gerundet ist.
Die Syntax der round()
Funktion lautet:
rund (Zahl, Ziffern)
round () Parameter
Die round()
Funktion akzeptiert zwei Parameter:
- number - die zu rundende Zahl
- ndigits (optional) - Zahl, bis zu der die angegebene Zahl gerundet ist; Der Standardwert ist 0
Rückgabewert von round ()
- Wenn
ndigits
nicht angegeben, wirdround()
die nächste Ganzzahl zur angegebenen Zahl zurückgegeben. - Wenn
ndigits
angegeben, wirdround()
die auf diendigits
Ziffern gerundete Zahl zurückgegeben .
Beispiel 1: Wie funktioniert round () in Python?
# for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))
Ausgabe
10 11 6
Beispiel 2: Runden Sie eine Zahl auf die angegebene Anzahl von Dezimalstellen
print(round(2.665, 2)) print(round(2.675, 2))
Ausgabe
2,67 2,67
Hinweis : Das Verhalten von round()
für Schwimmer kann überraschend sein. Hinweis round(2.675, 2)
gibt 2.67
statt der erwarteten 2.68
. Dies ist kein Fehler: Es ist das Ergebnis der Tatsache, dass die meisten Dezimalbrüche nicht genau als Float dargestellt werden können.
Wenn die Dezimalstelle 2.675
in eine binäre Gleitkommazahl konvertiert wird, wird sie erneut durch eine binäre Näherung ersetzt, deren genauer Wert lautet:
2.67499999999999982236431605997495353221893310546875
Aus diesem Grund wird es auf 2,67 abgerundet.
Wenn Sie in einer Situation sind, in der diese Genauigkeit erforderlich ist, sollten Sie das decimal
Modul verwenden, das für Gleitkomma-Arithmetik ausgelegt ist:
from decimal import Decimal # normal float num = 2.675 print(round(num, 2)) # using decimal.Decimal (passed float as string for precision) num = Decimal('2.675') print(round(num, 2))
Ausgabe
2,67 2,68