Funktsioon round () tagastab ujukomaarvu ümardatuna määratud arvu kümnendkohtadeni.
Funktsiooni süntaks round()
on:
ümmargune (arv, numbrit)
ümmargune () parameetrid
round()
Funktsiooni võtab kaks parameetrit:
- number - ümardatav arv
- ndigits (valikuline) - arv, milleni antud arv ümardatakse; vaikimisi 0
Tagasiväärtus ringist ()
- Kui
ndigits
seda ei esitata,round()
tagastab antud numbrile lähima täisarvu. - Kui see
ndigits
on antud,round()
tagastab arv ümardatudndigits
numbriteni.
Näide 1: Kui ümmargune () Pythonis töötab?
# for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))
Väljund
10 11 6
Näide 2: ümardage arv etteantud kümnendkohtadeni
print(round(2.665, 2)) print(round(2.675, 2))
Väljund
2,67 2,67
Märkus . round()
Ujukite käitumine võib olla üllatav. Teade round(2.675, 2)
annab 2.67
oodatud asemel 2.68
. See pole viga: see on tingitud asjaolust, et enamikku kümnendmurdudest ei saa täpselt ujukina esitada.
Kui kümnendkoht 2.675
teisendatakse binaarse ujukoma numbriks, asendatakse see uuesti binaarse lähendusega, mille täpne väärtus on:
2.67499999999999982236431605997495353221893310546875
Seetõttu ümardatakse see alla väärtuseni 2,67.
Kui olete olukorras, kus seda täpsust on vaja, kaaluge decimal
mooduli kasutamist, mis on mõeldud ujukoma aritmeetikaks:
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))
Väljund
2,67 2,68