Ga naar hoofdinhoud

Afronden op 2 decimalen in Python: 7 methoden uitgelegd

Leer hoe je een getal afrondt op twee decimalen in Python met round(), f-strings, format(), de decimal-module, NumPy en meer — inclusief een tabel met methodevergelijking.
Bijgewerkt 2 jun 2026  · 7 min lezen

Getallen afronden op twee decimalen is een belangrijke techniek in Python. Het is vooral handig bij financiële berekeningen, datavisualisatie en wetenschappelijke rapportage.

Python biedt verschillende methoden voor nauwkeurig afronden. In deze tutorial laat ik je zien hoe je een getal afrondt op twee decimalen in Python met ingebouwde functies, bibliotheken en opmaakmethoden.

Als je net begint als data-analist, raad ik DataCamp’s cursus Introduction to Python aan om de basis van Python voor datamanipulatie en -transformatie te leren. Onze Python NumPy-tutorial is ook handig als je grote arrays met getallen moet afronden in data-analyseworkflows.

TL;DR

  • Gebruik round(number, 2) voor rekenkundig afronden — dit wijzigt de daadwerkelijke waarde.

  • Gebruik f"{number:.2f}" of str.format() alleen voor weergave — de oorspronkelijke float blijft ongewijzigd.

  • Gebruik de module decimal wanneer exacte decimale precisie vereist is (bijv. financiële berekeningen).

  • Gebruik np.round(array, 2) om een hele NumPy-array in één keer af te ronden.

  • Let op verrassingen door float-precisie: round(2.675, 2) geeft 2.67 terug, niet 2.68, vanwege hoe floats in het geheugen worden opgeslagen.

Afronden en decimalen uitgelegd

Decimalen zijn de cijfers die direct na de decimale punt in een getal staan. Ze zijn belangrijk omdat ze de precisie van een getal bepalen. Hoe meer decimalen, hoe nauwkeuriger, en omgekeerd.

Afronden betekent dat je een getal aanpast door het aantal decimalen te verminderen. Deze techniek wordt meestal toegepast om een getal te vereenvoudigen en consistentie in berekeningen te behouden. Toch beïnvloedt afronden op specifieke decimalen de nauwkeurigheid van berekende waarden, doordat er kleine afrondingsfouten worden geïntroduceerd.

Python biedt verschillende methoden om getallen op twee decimalen af te ronden. De volgende voorbeelden geven gedetailleerde toelichtingen op deze technieken.

Een getal afronden in Python met round()

De functie round() is Python’s ingebouwde functie om floating-pointgetallen af te ronden op het opgegeven aantal decimalen. Je geeft het aantal decimalen op via het tweede argument. Het onderstaande voorbeeld print 34,15.

# Example number to be rounded
number = 34.14559

# Rounding the number to 2 decimal places
rounded_number = round(number, 2)

print(rounded_number)

# 34.15

Pythons round()-functie gebruikt "round half to even" als standaard afrondingsmethode wanneer je het tweede argument weglaat. Bij round half to even (bankiersafronden) wordt een getal dat precies halverwege twee integers ligt, afgerond naar het dichtstbijzijnde even geheel getal. Deze techniek is nuttig omdat het cumulatieve afrondingsfouten kan beperken.

Float-precisievalkuil met round()

Er is één subtiliteit die je moet kennen voordat je op round() vertrouwt in financiële code. Probeer dit:

print(round(2.675, 2))  # You might expect 2.68
# Output: 2.67

Het resultaat is 2.67, niet 2.68. De waarde 2.675 kan niet exact worden weergegeven in binaire floating-point (IEEE 754); de opgeslagen waarde is iets lager dan 2.675, waardoor Python naar beneden afrondt.

Als je exact afronden nodig hebt voor financiële berekeningen, gebruik dan de module decimal met een expliciete afrondingsmodus:

from decimal import Decimal, ROUND_HALF_UP

result = Decimal("2.675").quantize(Decimal("0.01"), rounding=ROUND_HALF_UP)
print(result)  # 2.68

Een getal afronden met tekenreeksopmaak in Python

Technieken voor tekenreeksopmaak zijn handig om getallen op twee decimalen af te ronden, vooral bij het tonen van de output.

Onthoud dat wanneer je in Python tekenreeksopmaak gebruikt om een getal af te ronden, de afgeronde output een string is, maar het oorspronkelijke getal ongewijzigd blijft. Als je daarna rekent met het oorspronkelijke getal, gebeuren de berekeningen op de niet-afgeronde waarde, wat tot verrassende resultaten kan leiden.

Afronden met de %-operator

De %-operator biedt een traditionele manier om getallen op twee decimalen te formatteren. Met de %-operator maak je geformatteerde strings door waarden in placeholders te plaatsen.

In het onderstaande voorbeeld geeft f aan dat de waarde een floating-pointgetal is, terwijl .2 het aantal decimalen specificeert.

# Example number to be rounded
number = 3.14159

# Using the % operator to round to 2 decimal places
formatted_number = "%.2f" % number

print(formatted_number)

# 3.14

Afronden met str.format()

De methode str.format() biedt een flexibelere manier om complexe opmaak toe te passen. Omdat het met benoemde placeholders kan werken, geven ontwikkelaars vaak de voorkeur aan deze methode boven de %-operator. In het onderstaande voorbeeld wordt :.2f binnen de accolades gebruikt om aan te geven dat het getal op twee decimalen wordt afgerond. De code print 3.14.

# Example number to be rounded
number = 3.14159

# Using str.format() to round to 2 decimal places
formatted_number = "{:.2f}".format(number)

print(formatted_number)

# 3.14

Afronden met f-strings (Python 3.6+)

F-strings kwamen in Python 3.6 en zijn nu de voorkeursmanier om waarden in strings op te nemen. De f-string-syntaxis is extra overzichtelijk voor afronden: je krijgt weergaveopmaak in één regel zonder aparte aanroep. De code hieronder print 14.68.

# Example number to be rounded
number = 14.67856

# Using f-strings to round to 2 decimal places
formatted_number = f"{number:.2f}"

print(formatted_number)

# 14.68

Afronden met format() in Python

De ingebouwde functie format() neemt een waarde en een formatspecificatie en retourneert een geformatteerde string. In tegenstelling tot str.format() geef je het getal direct door, in plaats van het in een sjabloonstring te plaatsen. De code hieronder print 345.69.

# Example number to be rounded
number = 345.68776

# Using the built-in format() to round to 2 decimal places
formatted_number = format(number, ".2f")

print(formatted_number)

# 345.69

Andere modules gebruiken om een getal af te ronden in Python

Naast de basis van Python zijn er veel andere modules die je kunt gebruiken om getallen af te ronden. Ik laat je de drie bekendste voorbeelden zien: math, decimal en NumPy.

Afronden met de math-module

De module math biedt geen functies die direct afronden op een specifiek aantal decimalen. Je kunt de math-module echter combineren met andere rekenstappen om een getal op twee decimalen af te ronden.

De functie math.floor() rondt een getal naar beneden af op het dichtstbijzijnde gehele getal. Om naar beneden af te ronden op twee decimalen, vermenigvuldig je met 100, pas je math.floor() toe en deel je weer door 100. De code hieronder print 3.14.

# Import math module
import math

# Example number to be rounded
number = 3.14159

# Using math.floor() to round down to 2 decimal places
rounded_down = math.floor(number * 100) / 100

print(rounded_down)

# 3.14

Op dezelfde manier rondt de functie math.ceil() een getal naar boven af op het dichtstbijzijnde gehele getal. Om naar boven af te ronden op twee decimalen, vermenigvuldig je met 100, pas je math.ceil() toe en deel je door 100. De code hieronder print 3.15.

# Import the math module
import math

# Example number to be rounded
number = 3.14159

# Using math.ceil() to round up to 2 decimal places
rounded_up = math.ceil(number * 100) / 100

print(rounded_up)

# 3.15

Afronden met de decimal-module

De module decimal in Python is handig om floats nauwkeurig op een bepaald aantal decimalen af te ronden met de methode .quantize(). In het onderstaande voorbeeld stellen we de precisie in op 0.01 om aan te geven dat we op twee decimalen willen afronden.

# Import the decimal module
from decimal import Decimal

# Example number to be rounded
number = Decimal("18.73869")

# Define the rounding precision to 2 decimal places
precision = Decimal('0.01')

# Using the quantize method with ROUND_UP 
# to round the number up to 2 decimal places
rounded_number = number.quantize(precision)

print(rounded_number)

# 18.74

Als je specifiek altijd naar boven wilt afronden, bekijk dan onze nieuwste tutorial How to Round Up a Number in Python om meer te leren over het gebruik van de modules math en decimal, en andere technieken om er zeker van te zijn dat er altijd naar boven wordt afgerond in plaats van naar beneden. Wil je algemener meer begrijpen over datatransformatie, doorloop dan onze carrièretrack Data Analyst with Python om je analytische vaardigheden te laten groeien.

Afronden met NumPy

Werk je met arrays in NumPy, gebruik dan np.round() om elk element in één keer af te ronden. Dit is sneller en leesbaarder dan handmatig over waarden loopen.

import numpy as np

prices = np.array([1.2345, 9.8765, 3.14159])
rounded_prices = np.round(prices, 2)

print(rounded_prices)
# [1.23 9.88 3.14]

np.round() past dezelfde bankiersafrondingsregel toe als Pythons ingebouwde round(). De methode .round() werkt op dezelfde manier op pandas DataFrames en Series:

import pandas as pd

df = pd.DataFrame({"price": [1.2345, 9.8765, 3.14159]})
df["price_rounded"] = df["price"].round(2)

print(df)
#      price  price_rounded
# 0   1.2345           1.23
# 1   9.8765           9.88
# 2  3.14159           3.14

Voor een bredere kijk op datatransformatie met pandas, zie onze pandas-tutorial.

Wanneer gebruik je welke afrondmethode in Python?

Hier is een korte referentie om de juiste afrondingsaanpak te kiezen:

Methode Beste voor Wijzigt waarde? Retourneert
round(x, 2) Algemene rekenkunde Ja float
f"{x:.2f}" Weergave / print Nee str
str.format() Weergave / print Nee str
% operator Weergave / print (legacy) Nee str
format(x, ".2f") Weergave / enkele waarde Nee str
math.floor() / ceil() Altijd naar beneden / naar boven afronden Ja float
Decimal.quantize() Financieel / exacte decimalen Ja Decimal
np.round(arr, 2) NumPy-arrays Ja ndarray

Een paar vuistregels om je keuze te sturen:

  • Alleen een getal tonen? Gebruik een f-string (f"{x:.2f}"). Eén regel, geen imports, geen bijwerkingen op de oorspronkelijke waarde.

  • Verder rekenen met het resultaat? Gebruik round(x, 2). Dit retourneert een float waarmee je kunt doorrekenen.

  • Financiële of boekhoudcode? Gebruik Decimal.quantize(). Verrassingen door float-precisie (round(2.675, 2) == 2.67) treden niet op met de module decimal.

  • Altijd omhoog of altijd omlaag? Gebruik math.ceil() of math.floor(). Deze negeren de gewone afrondingsregels volledig.

  • Werk je met een NumPy-array of pandas-kolom? Gebruik np.round(arr, 2) of series.round(2). Beide verwerken de hele collectie in één keer.

  • Oude code onderhouden? De %-operator werkt nog steeds, maar f-strings hebben deze in Python 3.6 vervangen — kies daarvoor in nieuwe code.

Tot slot

Getallen afronden op twee decimalen is een belangrijke techniek voor betere precisie in financiële en wetenschappelijke berekeningen. In dit artikel hebben we de verschillende methoden besproken om op twee decimalen af te ronden, waaronder ingebouwde functies, tekenreeksopmaak en de module math. Het is belangrijk om de juiste methode te kiezen op basis van de eisen, zoals precisie en opmaakstijl. Ik moedig je aan om de verschillende methoden te oefenen met diverse voorbeelden om beter te begrijpen wat het beste past bij jouw use-cases.

Wil je je Python-skills verder ontwikkelen, bekijk dan onze skill track Python Programming, met functies, decorators en geavanceerde Python-patronen. Onze carrièretrack Python Developer is ook ontworpen om je als developer te laten doorgroeien met meer geavanceerde datastructuren en algoritmen.


Allan Ouko's photo
Author
Allan Ouko
LinkedIn
\n
\n
\n
\n
Technical writer voor data science met praktische ervaring in data-analyse, business intelligence en data science. Ik schrijf praktische, op de industrie gerichte content over SQL, Python, Power BI, Databricks en data engineering, gebaseerd op analytisch werk in de echte wereld. Mijn schrijfwerk slaat een brug tussen technische diepgang en zakelijke impact, en helpt professionals om data om te zetten in onderbouwde beslissingen.
\n
\n
\n
\n

Veelgestelde vragen

Wat is de simpelste manier om een getal in Python op twee decimalen af te ronden?

De simpelste manier om een getal op twee decimalen af te ronden is met de ingebouwde functie round().

Waarom wordt een getal naar het dichtstbijzijnde gehele getal afgerond met de functie round()?

De standaardmethode van round() is round half to even. Om een getal op twee decimalen af te ronden, moet je het tweede argument als 2 meegeven in de functie, dus round(3.14159, 2).

Hoe gebruik je de functie format() om een getal op twee decimalen af te ronden?

De functie format() wordt gebruikt om een getal op het opgegeven aantal decimalen af te ronden en het binnen een geformatteerde string weer te geven.

Wat is round half to even?

Bij de methode round half to even, of bankiersafronden, wordt een getal dat precies halverwege twee gehele getallen ligt afgerond naar het dichtstbijzijnde even gehele getal.

Biedt de math-module afronden op twee decimalen in Python?

Je kunt de functies math.floor() en math.ceil() alleen in combinatie met andere rekenstappen gebruiken om een getal op een gespecificeerd aantal decimalen af te ronden.

Waarom geeft round(2.675, 2) 2.67 terug in plaats van 2.68?

Dit is een kwestie van floating-pointprecisie. De waarde 2.675 kan niet exact worden weergegeven in binaire floating-point (IEEE 754); de opgeslagen waarde is iets lager dan 2.675, waardoor Python naar 2.67 afrondt.

Om dit in financiële code te voorkomen, gebruik je de module decimal met een expliciete afrondingsmodus: Decimal("2.675").quantize(Decimal("0.01"), rounding=ROUND_HALF_UP) geeft 2.68 terug zoals verwacht.

Hoe rond ik alle waarden in een pandas DataFrame af op 2 decimalen?

Gebruik de methode .round() op een DataFrame of Series. Om één kolom af te ronden: df["price"] = df["price"].round(2). Om alle numerieke kolommen tegelijk af te ronden: df = df.round(2).

Onderwerpen

Leer Python met DataCamp

Cursus

Introductie tot Python

4 Hr
6.9M
Leer de basis van data-analyse met Python in 4 uur. Deze online cursus laat je kennismaken met de Python-interface en populaire pakketten.
Bekijk detailsRight Arrow
Begin met de cursus
Meer zienRight Arrow
Gerelateerd

blog

AI vanaf nul leren in 2026: een complete gids van de experts

Ontdek alles wat je moet weten om in 2026 AI te leren, van tips om te beginnen tot handige resources en inzichten van industrie-experts.
Adel Nehme's photo

Adel Nehme

15 min

Meer zienMeer zien