Python:
Avrunding av tall

Hvordan:

Her er det grunnleggende om avrunding av tall i Python:

# Rund av et tall til nærmeste heltall
print(round(8.67))  # Utganger: 9

# Rund av et tall til et spesifisert antall desimaler
print(round(8.67, 1))  # Utganger: 8.7

# Partall avrundes ned og oddetall avrundes opp når de er like nær
print(round(2.5))  # Utganger: 2
print(round(3.5))  # Utganger: 4

Dypdykk

I Python er ikke round() bare å kutte av desimaler. Historisk sett følger Python, som mange andre språk, “avrunder halvparten til jevnt” eller “bankmannens avrunding”. Dette minimerer kumulativ feil i summer eller gjennomsnitt, noe som er viktig i finansielle beregninger.

For alternativer har du math.floor() og math.ceil() fra Pythons matte-modul, som drar tall ned eller opp til neste hele tall. Men hvis det er presisjon du er ute etter, lar decimal-modulens quantize() deg spesifisere avrundingsatferd.

Under panseret håndterer round() binære flyttall. Siden noen desimaler ikke kan uttrykkes nøyaktig i binært, kan du få overraskelser med ting som round(2.675, 2) som ikke blir 2.68 som forventet. Her kommer decimal eller fractions inn for høy presisjon.

Se Også