Funktionen rund () returnerar ett flytande nummer avrundat till det angivna antalet decimaler.
round()
Funktionens syntax är:
runda (antal, siffror)
runda () parametrar
Den round()
funktionen tar två parametrar:
- nummer - numret som ska avrundas
- n siffror (valfritt) - nummer upp till vilket det angivna numret avrundas; som standard 0
Returvärde från runda ()
- Om
ndigits
inte angesround()
returnerar närmaste heltal till det angivna numret. - Om
ndigits
anges,round()
returnerar det avrundade antalet tillndigits
siffrorna.
Exempel 1: Hur fungerar round () i Python?
# for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))
Produktion
10 11 6
Exempel 2: Runda ett tal till det angivna antalet decimaler
print(round(2.665, 2)) print(round(2.675, 2))
Produktion
2,67 2,67
Obs : Uppförandet av round()
för flottörer kan vara förvånande. Meddelande round(2.675, 2)
ger 2.67
istället för förväntat 2.68
. Det här är inte ett fel: det är ett resultat av att de flesta decimalfraktioner inte kan representeras exakt som en flottör.
När decimaltal 2.675
konverteras till ett binärt flytpunktsnummer ersätts det igen med en binär approximation, vars exakta värde är:
2,6799999999999982236431605997495353221893310546875
På grund av detta avrundas den till 2,67.
Om du befinner dig i en situation där denna precision behövs, överväga att använda decimal
modulen, som är utformad för flytpunktsräkning:
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))
Produktion
2,67 2,68