Python-runde ()

Funksjonen rund () returnerer et flytende nummer avrundet til det angitte antallet desimaler.

Syntaksen til round()funksjonen er:

 runde (nummer, tall)

runde () parametere

Den round()funksjonen tar to parametere:

  • nummer - tallet som skal avrundes
  • n-sifre (valgfritt) - nummer som det gitte nummeret er avrundet til; er som standard 0

Returverdi fra runde ()

  • Hvis ndigitsikke er oppgitt, round()returnerer nærmeste heltall til det angitte tallet.
  • Hvis ndigitser gitt, round()returnerer tallet avrundet til ndigitssifrene.

Eksempel 1: Hvordan fungerer round () i Python?

 # for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))

Produksjon

 10 11 6

Eksempel 2: Rund et tall til det angitte antallet desimaler

 print(round(2.665, 2)) print(round(2.675, 2))

Produksjon

 2,67 2,67

Merk : Oppførselen til round()for flottører kan være overraskende. Varsel round(2.675, 2)gir i 2.67stedet for forventet 2.68. Dette er ikke en feil: det er et resultat av at de fleste desimalfraksjoner ikke kan vises som en flottør.

Når desimalet 2.675konverteres til et binært flytende nummer, erstattes det igjen med en binær tilnærming, hvis eksakte verdi er:

 2.67499999999999982236431605997495353221893310546875

På grunn av dette er den avrundet ned til 2,67.

Hvis du er i en situasjon der denne presisjonen er nødvendig, bør du vurdere å bruke decimalmodulen, som er designet for flytende-aritmetikk:

 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))

Produksjon

 2,67 2,68

Interessante artikler...