Funkcija Round () atgriež peldošā komata skaitli, noapaļotu līdz norādītajam skaitlim aiz komata.
Funkcijas sintakse round()
ir šāda:
apaļa (skaitlis, cipari)
apaļa () parametri
round()
Funkcija aizņem divi parametri:
- numurs - noapaļojamais skaitlis
- ndigits (pēc izvēles) - skaitlis, līdz kuram doto skaitli noapaļo; noklusējuma vērtība ir 0
Atgriešanās vērtība no kārtas ()
- Ja
ndigits
tas nav norādīts,round()
atgriež tuvāko skaitli norādītajam skaitlim. - Ja tas
ndigits
ir norādīts,round()
atgriež skaitli noapaļotu līdzndigits
cipariem.
1. piemērs: cik apaļš () darbojas Python?
# for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))
Rezultāts
10 11 6
2. piemērs: noapaļojiet skaitli līdz dotajam ciparam aiz komata
print(round(2.665, 2)) print(round(2.675, 2))
Rezultāts
2,67 2,67
Piezīme . Pludiņu uzvedība round()
var būt pārsteidzoša. Paziņojums round(2.675, 2)
dod 2.67
gaidītā vietā 2.68
. Tā nav kļūda: tas ir rezultāts tam, ka lielāko daļu decimāldaļu nevar precīzi attēlot kā pludiņu.
Kad decimālskaitlis 2.675
tiek pārveidots par bināro peldošā komata skaitli, tas atkal tiek aizstāts ar bināro aproksimāciju, kuras precīza vērtība ir:
2.67499999999999982236431605997495353221893310546875
Tādēļ tas tiek noapaļots uz leju līdz 2.67.
Ja atrodaties situācijā, kad nepieciešama šī precizitāte, apsveriet iespēju izmantot decimal
moduli, kas paredzēts peldošā komata aritmētikai:
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))
Rezultāts
2,67 2,68