Python okrugli ()

Funkcija round () vraća broj s pomičnom zarezom zaokružen na navedeni broj decimala.

Sintaksa round()funkcije je:

 okrugli (broj, nigrice)

okrugli () parametri

round()Funkcija traje dva parametra:

  • broj - broj koji treba zaokružiti
  • ndigits (nije obavezno) - broj do kojeg se zaokružuje zadani broj; zadane vrijednosti 0

Povratna vrijednost iz kruga ()

  • Ako ndigitsnije navedeno, round()vraća najbliži cijeli broj na zadani broj.
  • Ako ndigitsje zadano, round()vraća zaokruženi broj na ndigitsznamenke.

Primjer 1: Kako round () djeluje u Pythonu?

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

Izlaz

 10 11 6

Primjer 2: Zaokružite broj na zadani broj decimalnih mjesta

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

Izlaz

 2,67 2,67

Napomena : Ponašanje round()for floats može biti iznenađujuće. Obavijest round(2.675, 2)daje 2.67umjesto očekivanog 2.68. Ovo nije bug: rezultat je činjenice da većina decimalnih razlomaka ne može biti predstavljena točno kao float.

Kada se decimalni znak 2.675pretvori u binarni broj s pomičnom zarezom, opet se zamjenjuje binarnom aproksimacijom čija je točna vrijednost:

 2.67499999999999982236431605997495353221893310546875

Zbog toga je zaokružen na 2,67.

Ako ste u situaciji u kojoj je potrebna ova preciznost, razmislite o upotrebi decimalmodula koji je dizajniran za aritmetiku s pomičnom zarezom:

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

Izlaz

 2,67 2,68

Zanimljivi članci...