De functie round () retourneert een getal met drijvende komma afgerond op het opgegeven aantal decimalen.
De syntaxis van de round()
functie is:
rond (getal, ncijfers)
round () Parameters
De round()
functie heeft twee parameters:
- getal - het aantal dat moet worden afgerond
- ncijfers (optioneel) - getal waarop het opgegeven getal is afgerond; is standaard 0
Retourwaarde van round ()
- Als
ndigits
dit niet is opgegeven,round()
wordt het dichtstbijzijnde gehele getal geretourneerd naar het opgegeven getal. - Als
ndigits
is gegeven,round()
retourneert het getal afgerond op dendigits
cijfers.
Voorbeeld 1: Hoe werkt round () in Python?
# for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))
Uitvoer
10 11 6
Voorbeeld 2: Rond een getal af op het opgegeven aantal decimalen
print(round(2.665, 2)) print(round(2.675, 2))
Uitvoer
2,67 2,67
Opmerking : het gedrag van round()
voor drijvers kan verrassend zijn. Kennisgeving round(2.675, 2)
geeft in 2.67
plaats van verwacht 2.68
. Dit is geen bug: het is een gevolg van het feit dat de meeste decimale breuken niet exact kunnen worden weergegeven als een vlotter.
Wanneer het decimaalteken 2.675
wordt geconverteerd naar een binair getal met drijvende komma, wordt het opnieuw vervangen door een binaire benadering, waarvan de exacte waarde is:
2,67499999999999982236431605997495353221893310546875
Hierdoor wordt het naar beneden afgerond op 2,67.
Als u zich in een situatie bevindt waarin deze precisie nodig is, overweeg dan om de decimal
module te gebruiken, die is ontworpen voor drijvende-kommaberekeningen:
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))
Uitvoer
2,67 2,68