Python runda ()

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 ndigitsinte anges round()returnerar närmaste heltal till det angivna numret.
  • Om ndigitsanges, round()returnerar det avrundade antalet till ndigitssiffrorna.

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.67istä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.675konverteras 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 decimalmodulen, 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

Intressanta artiklar...