Wie man Zahlen in Python rundet
Min-jun Kim
Dev Intern · Leapcell

Key Takeaways
- Pythons integrierte Funktion
round()
verwendet die Strategie “round half to even” (runde zur nächsten geraden Zahl). - Verwenden Sie
math.ceil()
odermath.floor()
, um immer auf- oder abzurunden. - Das
decimal
-Modul bietet präzises Runden für finanzielle Anwendungsfälle.
Das Runden von Zahlen ist eine grundlegende Operation in der Programmierung, insbesondere bei der Arbeit mit Gleitkommaarithmetik, Finanzberechnungen oder Datendarstellung. Python bietet verschiedene Methoden zum Runden von Zahlen, die jeweils für unterschiedliche Szenarien geeignet sind. Dieser Artikel untersucht verschiedene Rundungstechniken in Python, einschließlich der integrierten Funktion round()
, des math
-Moduls und des decimal
-Moduls.
Die integrierte Funktion round()
Pythons integrierte Funktion round()
ist die einfachste Möglichkeit, Zahlen zu runden.
Syntax
round(number, ndigits)
number
: Die Zahl, die Sie runden möchten.ndigits
(optional): Die Anzahl der Dezimalstellen, auf die gerundet werden soll. Wenn sie weggelassen wird, wird die Zahl auf die nächste ganze Zahl gerundet.
Beispiele
round(3.14159) # Ausgabe: 3 round(3.14159, 2) # Ausgabe: 3.14 round(2.5) # Ausgabe: 2 round(3.5) # Ausgabe: 4
Hinweis: Python verwendet "round half to even" (auch bekannt als "Banker-Rundung") als Standard-Rundungsstrategie. Dies bedeutet, dass Zahlen, die genau auf halbem Weg zwischen zwei ganzen Zahlen liegen, auf die nächste gerade ganze Zahl gerundet werden. Zum Beispiel gibt round(2.5)
den Wert 2
zurück und round(3.5)
den Wert 4
Auf- und Abrunden mit dem math
-Modul
Für mehr Kontrolle über das Runden, insbesondere wenn Sie immer auf- oder abrunden müssen, bietet Pythons math
-Modul die Funktionen ceil()
und floor()
.
Aufrunden mit math.ceil()
import math math.ceil(3.2) # Ausgabe: 4 math.ceil(-3.2) # Ausgabe: -3
math.ceil()
gibt die kleinste ganze Zahl zurück, die größer oder gleich der gegebenen Zahl ist.
Abrunden mit math.floor()
import math math.floor(3.8) # Ausgabe: 3 math.floor(-3.8) # Ausgabe: -4
math.floor()
gibt die größte ganze Zahl zurück, die kleiner oder gleich der gegebenen Zahl ist.
Präzises Runden mit dem decimal
-Modul
Bei Finanzanwendungen oder wenn eine hohe Präzision erforderlich ist, ist das decimal
-Modul vorzuziehen. Es ermöglicht eine genauere Dezimaldarstellung und verschiedene Rundungsstrategien.
Beispiel: Runden mit decimal
from decimal import Decimal, ROUND_HALF_UP number = Decimal('2.675') rounded_number = number.quantize(Decimal('0.01'), rounding=ROUND_HALF_UP) print(rounded_number) # Ausgabe: 2.68
In diesem Beispiel rundet ROUND_HALF_UP
die Zahl von Null weg, wenn sie genau auf halbem Weg zwischen zwei Möglichkeiten liegt. Dies ist die Standard-Rundungsmethode, die in Schulen gelehrt wird.
Runden von Arrays mit NumPy
Für numerische Berechnungen mit Arrays bietet NumPy effiziente Rundungsfunktionen.
Beispiel: Runden mit NumPy
import numpy as np array = np.array([1.234, 5.6789, 9.8765]) rounded_array = np.round(array, 2) print(rounded_array) # Ausgabe: [1.23 5.68 9.88]
Die Funktion round()
von NumPy rundet jedes Element im Array auf die angegebene Anzahl von Dezimalstellen.
Zusammenfassung
Python bietet mehrere Methoden zum Runden von Zahlen:
- Verwenden Sie
round()
für grundlegende Rundungsanforderungen. - Verwenden Sie
math.ceil()
undmath.floor()
, wenn Sie immer auf- oder abrunden müssen. - Verwenden Sie das
decimal
-Modul für präzises Dezimalrunden, insbesondere in Finanzanwendungen. - Verwenden Sie die Rundungsfunktionen von NumPy für effiziente Operationen mit Arrays.
Die Wahl der geeigneten Methode hängt von den spezifischen Anforderungen Ihrer Anwendung ab, z. B. der gewünschten Rundungsstrategie und dem Bedarf an Präzision.
FAQs
Weil Python “round half to even” (Banker-Rundung) verwendet und 2 die nächste gerade Zahl ist.
Verwenden Sie decimal
, wenn Sie eine hochpräzise Rundung benötigen, z. B. in Finanz- oder wissenschaftlichen Anwendungen.
Ja, verwenden Sie die Funktion round()
von NumPy, um Arrays effizient zu runden.
We are Leapcell, your top choice for hosting Python projects.
Leapcell is the Next-Gen Serverless Platform for Web Hosting, Async Tasks, and Redis:
Multi-Language Support
- Develop with Node.js, Python, Go, or Rust.
Deploy unlimited projects for free
- pay only for usage — no requests, no charges.
Unbeatable Cost Efficiency
- Pay-as-you-go with no idle charges.
- Example: $25 supports 6.94M requests at a 60ms average response time.
Streamlined Developer Experience
- Intuitive UI for effortless setup.
- Fully automated CI/CD pipelines and GitOps integration.
- Real-time metrics and logging for actionable insights.
Effortless Scalability and High Performance
- Auto-scaling to handle high concurrency with ease.
- Zero operational overhead — just focus on building.
Explore more in the Documentation!
Follow us on X: @LeapcellHQ