Weiter zum Inhalt

Auf 2 Dezimalstellen runden in Python: 7 Methoden erklärt

Lerne, wie du Zahlen in Python mit round(), f-Strings, format(), dem decimal-Modul, NumPy und mehr auf zwei Dezimalstellen rundest — inklusive Vergleichstabelle der Methoden.
Aktualisiert 2. Juni 2026  · 7 Min. lesen

Zahlen auf zwei Dezimalstellen zu runden, ist eine wichtige Technik in Python. Sie ist besonders nützlich in Finanzberechnungen, bei der Datenpräsentation und in wissenschaftlichen Reports.

Python bietet mehrere Methoden für präzises Runden. In diesem Tutorial zeige ich dir, wie du eine Zahl in Python mit eingebauten Funktionen, Bibliotheken und Formatierungsmethoden auf zwei Dezimalstellen rundest.

Wenn du als Data Analyst durchstartest, empfehle ich dir den Kurs Introduction to Python von DataCamp, um die Python-Grundlagen für Datenmanipulation und -transformation zu lernen. Unser Python NumPy Tutorial hilft dir außerdem, wenn du in Analyse-Workflows große Zahlenarrays runden musst.

TL;DR

  • Verwende round(number, 2) für arithmetisches Runden — der tatsächliche Wert ändert sich.

  • Verwende f"{number:.2f}" oder str.format() nur für die Anzeige — der ursprüngliche Float bleibt unverändert.

  • Nutze das decimal-Modul, wenn exakte Dezimalpräzision erforderlich ist (z. B. in Finanzberechnungen).

  • Verwende np.round(array, 2), um ein ganzes NumPy-Array in einem Schritt zu runden.

  • Achte auf Float-Präzisionsfallen: round(2.675, 2) ergibt 2.67 statt 2.68, weil Floats im Speicher binär gespeichert werden.

Fähigkeiten im Bereich Machine Learning aufbauen

Bringe deine Fähigkeiten im maschinellen Lernen auf Produktionsniveau.
Kostenloses Lernen beginnen

Runden und Dezimalstellen verstehen

Dezimalstellen sind die Ziffern direkt nach dem Dezimalpunkt einer Zahl. Sie bestimmen die Genauigkeit einer Zahl: Je mehr Dezimalstellen, desto präziser — und umgekehrt.

Runden bedeutet, eine Zahl so anzupassen, dass sie weniger Dezimalstellen hat. Das vereinfacht Zahlen und sorgt für Konsistenz über Berechnungen hinweg. Beachte aber: Das Runden auf bestimmte Dezimalstellen beeinflusst die Genauigkeit, weil dabei kleine Rundungsfehler entstehen.

Python bietet verschiedene Methoden, um auf zwei Dezimalstellen zu runden. Die folgenden Beispiele erklären diese Techniken im Detail.

Mit round() eine Zahl in Python runden

Die Funktion round() ist Pythons eingebaute Methode, um Gleitkommazahlen auf eine angegebene Zahl von Dezimalstellen zu runden. Die gewünschte Anzahl gibst du als zweiten Parameter an. Das folgende Beispiel gibt 34,15 aus.

# 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() verwendet standardmäßig "Round half to even", wenn du das zweite Argument weglässt. Beim Round-half-to-even (Banker's Rounding) wird eine Zahl, die genau zwischen zwei ganzen Zahlen liegt, auf die nächstgelegene gerade ganze Zahl gerundet. Diese Technik hilft, kumulative Rundungsfehler zu minimieren.

Achtung Float-Präzision mit round()

Es gibt eine Feinheit, die du kennen solltest, bevor du dich in Finanzcode auf round() verlässt. Probiere Folgendes:

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

Das Ergebnis ist 2.67 statt 2.68. Der Wert 2.675 lässt sich im binären Gleitkommaformat (IEEE 754) nicht exakt darstellen; der gespeicherte Wert ist minimal kleiner als 2.675, daher rundet Python ab.

Wenn du exaktes Runden für Finanzberechnungen brauchst, nutze das decimal-Modul mit einem expliziten Rundungsmodus:

from decimal import Decimal, ROUND_HALF_UP

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

Mit String-Formatierung in Python runden

String-Formatierung ist praktisch, um Zahlen für die Ausgabe auf zwei Dezimalstellen zu runden.

Beachte: Beim Runden per String-Formatierung wird die gerundete Zahl als String angezeigt, aber der ursprüngliche numerische Wert bleibt unverändert. Berechnungen auf dem Original nutzen also den ungerundeten Wert — das kann zu überraschenden Ergebnissen führen.

Runden mit dem % Operator

Der %-Operator bietet eine traditionelle Methode, um Zahlen auf zwei Dezimalstellen zu formatieren. Er erzeugt formatierte Strings, indem Werte in Platzhalter eingefügt werden.

Im Beispiel unten kennzeichnet f einen Gleitkommawert, während .2 die gewünschte Anzahl an Dezimalstellen angibt.

# 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

Runden mit str.format()

Die Methode str.format() ist flexibel für komplexere Formatierungen. Durch benannte Platzhalter ist sie oft angenehmer als der %-Operator. Im Beispiel unten gibt :.2f in geschweiften Klammern an, dass auf zwei Dezimalstellen gerundet wird. Der Code gibt 3.14 aus.

# 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

Runden mit f-Strings (Python 3.6+)

F-Strings kamen mit Python 3.6 und sind heute der bevorzugte Weg, Werte in Strings einzubetten. Die f-String-Syntax ist fürs Runden besonders elegant: Anzeigeformatierung in einer Zeile ohne separaten Aufruf. Der folgende Code druckt 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

Mit format() eine Zahl in Python runden

Die eingebaute Funktion format() nimmt einen Wert und eine Formatspezifikation und liefert einen formatierten String zurück. Anders als bei str.format() übergibst du die Zahl direkt, statt sie in eine Vorlagensyntax einzubetten. Der Code unten gibt 345.69 aus.

# 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

Weitere Module zum Runden in Python

Neben Basis-Python gibt es weitere Module, mit denen du runden kannst. Ich zeige dir die drei wichtigsten: math, decimal und NumPy.

Runden mit dem math-Modul

Das math-Modul bietet keine Funktion, die direkt auf eine bestimmte Dezimalstellenzahl rundet. Du kannst es aber mit einfacher Arithmetik kombinieren, um auf zwei Dezimalstellen zu runden.

Die Funktion math.floor() rundet auf die nächstkleinere ganze Zahl ab. Um auf zwei Dezimalstellen abzurunden, multiplizierst du die Zahl mit 100, wendest math.floor() an und teilst wieder durch 100. Der Code unten gibt 3.14 aus.

# 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

Analog rundet math.ceil() auf die nächstgrößere ganze Zahl auf. Um auf zwei Dezimalstellen aufzurunden, multiplizierst du mit 100, wendest math.ceil() an und teilst durch 100. Der Code unten gibt 3.15 aus.

# 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

Runden mit dem decimal-Modul

Das decimal-Modul in Python eignet sich, um Fließkommazahlen mit exakten Dezimalstellen per .quantize() zu runden. Im Beispiel unten setzen wir die Präzision auf 0.01, um auf zwei Dezimalstellen zu runden.

# 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

Wenn du ein konsequentes Aufrunden brauchst, lies unser aktuelles Tutorial How to Round Up a Number in Python, um mehr über math und decimal sowie weitere Techniken zu lernen, die immer aufrunden statt abrunden. Wenn du Daten­transformation allgemein vertiefen willst, schau dir unseren Data Analyst with Python Karriere-Lernpfad an, um deine analytischen Kompetenzen auszubauen.

Runden mit NumPy

Wenn du mit Arrays in NumPy arbeitest, nutze np.round(), um alle Elemente auf einmal zu runden. Das ist schneller und lesbarer, als manuell über Werte zu iterieren.

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() verwendet dieselbe Banker's-Rounding-Regel wie Pythons round(). Die Methode .round() funktioniert auf pandas DataFrames und Series genauso:

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

Einen umfassenderen Einstieg in Daten­transformation mit pandas findest du in unserem pandas Tutorial.

Wann welche Python-Rundungsmethode?

Hier ist eine kurze Entscheidungshilfe für die richtige Methode:

Methode Am besten geeignet für Ändert den Wert? Gibt zurück
round(x, 2) Allgemeine Arithmetik Ja float
f"{x:.2f}" Anzeige / Print Nein str
str.format() Anzeige / Print Nein str
% operator Anzeige / Print (Legacy) Nein str
format(x, ".2f") Anzeige / Einzelwert Nein str
math.floor() / ceil() Immer abrunden / immer aufrunden Ja float
Decimal.quantize() Finanzen / exakte Dezimalzahlen Ja Decimal
np.round(arr, 2) NumPy-Arrays Ja ndarray

Ein paar Faustregeln für die Auswahl:

  • Nur anzeigen? Nutze einen f-String (f"{x:.2f}"). Eine Zeile, keine Importe, keine Seiteneffekte auf den Originalwert.

  • Weiterrechnen mit dem Ergebnis? Verwende round(x, 2). Es liefert einen Float, mit dem du weiterrechnen kannst.

  • Finanz- oder Buchhaltungscode? Nutze Decimal.quantize(). Präzisionsfallen mit Floats (round(2.675, 2) == 2.67) treten mit dem decimal-Modul nicht auf.

  • Immer auf oder immer ab? Nutze math.ceil() oder math.floor(). Diese ignorieren übliche Rundungsregeln bewusst.

  • Mit einem NumPy-Array oder einer pandas-Spalte arbeiten? Verwende np.round(arr, 2) oder series.round(2). Beide verarbeiten die gesamte Sammlung auf einmal.

  • Alten Code pflegen? Der %-Operator funktioniert noch, aber f-Strings haben ihn seit Python 3.6 ersetzt — in neuem Code besser f-Strings nutzen.

Fazit

Zahlen auf zwei Dezimalstellen zu runden, ist zentral für präzisere Finanz- und Wissenschaftsberechnungen. In diesem Artikel haben wir verschiedene Methoden behandelt — von eingebauten Funktionen über String-Formatierung bis zum math-Modul. Entscheidend ist, die passende Methode je nach Anforderung zu wählen, etwa hinsichtlich Präzision oder Ausgabeformat. Übe die verschiedenen Ansätze mit eigenen Beispielen, um das beste Vorgehen für deine Use Cases zu finden.

Wenn du deine Python-Kompetenzen ausbauen willst, schau dir unseren Python Programming Skill-Lernpfad an — mit Funktionen, Dekoratoren und fortgeschrittenen Python-Patterns. Unser Python Developer Karrierepfad hilft dir außerdem, dich als Entwickler weiterzubilden und fortgeschrittene Datenstrukturen und Algorithmen zu meistern.

Werde ein ML-Wissenschaftler

Beherrsche Python, um ein Wissenschaftler für maschinelles Lernen zu werden

Allan Ouko's photo
Author
Allan Ouko
LinkedIn
Ich verfasse Artikel, die Datenwissenschaft und Analytik vereinfachen und leicht verständlich und zugänglich machen.

Häufig gestellte Fragen

Wie runde ich in Python am einfachsten auf zwei Dezimalstellen?

Am einfachsten rundest du mit der eingebauten Funktion round() auf zwei Dezimalstellen.

Warum rundet die Funktion round() ohne zweiten Parameter auf die nächstliegende ganze Zahl?

Die Standardmethode von round() ist Round half to even. Um auf zwei Dezimalstellen zu runden, musst du den zweiten Parameter als 2 angeben, also round(3.14159, 2).

Wie nutze ich die Funktion format(), um auf zwei Dezimalstellen zu runden?

Die Funktion format() rundet eine Zahl auf die angegebene Zahl von Dezimalstellen und gibt sie als formatierten String aus.

Was bedeutet Round half to even?

Round half to even, auch Banker's Rounding, rundet einen Wert, der genau zwischen zwei ganzen Zahlen liegt, auf die nächstgelegene gerade ganze Zahl.

Bietet das math-Modul ein direktes Runden auf zwei Dezimalstellen in Python?

Mit math.floor() und math.ceil() kannst du nur in Kombination mit einfacher Arithmetik auf eine bestimmte Dezimalstellenzahl runden.

Warum ergibt round(2.675, 2) den Wert 2.67 statt 2.68?

Das ist ein Gleitkomma-Präzisionsproblem. Der Wert 2.675 lässt sich im binären Gleitkommaformat (IEEE 754) nicht exakt darstellen; der gespeicherte Wert ist minimal kleiner als 2.675, daher rundet Python auf 2.67 ab.

Um das in Finanzcode zu vermeiden, nutze das decimal-Modul mit explizitem Rundungsmodus: Decimal("2.675").quantize(Decimal("0.01"), rounding=ROUND_HALF_UP) ergibt wie erwartet 2.68.

Wie runde ich alle Werte in einem pandas DataFrame auf 2 Dezimalstellen?

Nutze die Methode .round() auf DataFrame oder Series. Eine einzelne Spalte runden: df["price"] = df["price"].round(2). Alle numerischen Spalten auf einmal runden: df = df.round(2).

Themen

Lerne Python mit DataCamp

Kurs

Einführung in Python

4 Std.
6.9M
Lerne in nur vier Stunden die Grundlagen der Datenanalyse mit Python und entdecke beliebte Python-Pakete.
Details anzeigenRight Arrow
Kurs starten
Mehr anzeigenRight Arrow
Verwandt

Tutorial

So kürzt man eine Zeichenfolge in Python: Drei verschiedene Methoden

Lerne die Grundlagen zum Entfernen von führenden und nachfolgenden Zeichen aus einer Zeichenfolge in Python.
Adel Nehme's photo

Adel Nehme

Tutorial

Fibonacci-Folge in Python: Lerne und entdecke Programmiertechniken

Finde raus, wie die Fibonacci-Folge funktioniert. Schau dir die mathematischen Eigenschaften und die Anwendungen in der echten Welt an.
Laiba Siddiqui's photo

Laiba Siddiqui

Tutorial

Python-Arrays

Python-Arrays mit Code-Beispielen. Lerne noch heute, wie du mit Python NumPy Arrays erstellen und ausdrucken kannst!
DataCamp Team's photo

DataCamp Team

Tutorial

Python range()-Funktion Tutorial

Lerne anhand von Beispielen die Python-Funktion range() und ihre Möglichkeiten kennen.
Aditya Sharma's photo

Aditya Sharma

Tutorial

Wie man Listen in Python aufteilt: Einfache Beispiele und fortgeschrittene Methoden

Lerne, wie du Python-Listen mit Techniken wie Slicing, List Comprehensions und itertools aufteilen kannst. Finde heraus, wann du welche Methode für die beste Datenverarbeitung nutzen solltest.
Allan Ouko's photo

Allan Ouko

Mehr anzeigenMehr anzeigen