Heim  >  Artikel  >  Backend-Entwicklung  >  Wie garantiere ich das Aufrunden von Zahlen in Python?

Wie garantiere ich das Aufrunden von Zahlen in Python?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-23 12:13:10254Durchsuche

How do I Guarantee Rounding Up Numbers in Python?

Zahlen in Python aufrunden: Die Diskrepanz angehen

Bei der Arbeit mit Zahlen in Python kommen häufig Rundungsoperationen ins Spiel. Eine häufige Aufgabe ist das Aufrunden einer Zahl auf die nächste ganze Zahl. Allerdings kann die Verwendung der herkömmlichen Funktion „round()“ manchmal zu unerwarteten Ergebnissen führen, da Zahlen nach unten statt nach oben gerundet werden.

Erkundung des Abrundungsproblems

Betrachten Sie das folgende Beispiel :

round(2.3)

Dieser Code erwartet als Ergebnis 3, gibt aber stattdessen 2 zurück. Die Funktion „round()“ rundet die Zahl auf die nächste ganze Zahl, in diesem Fall 2.

Alternative Ansätze: Int() und Rundungsdiskrepanz

Versuch der Verwendung Die Funktion int() mit einem kleinen Offset zum Aufrunden, wie int(2.3 0.5), schlägt ebenfalls fehl und erzeugt 2 anstelle des gewünschten Wertes 3.

Der richtige Weg: Math.ceil verwenden

Die Lösung liegt in der Funktion math.ceil (Decke). Diese Funktion gibt die kleinste Ganzzahl zurück, die größer oder gleich der angegebenen Zahl ist.

Für Python 3:

import math
print(math.ceil(4.2))

Dieser Code rundet 4,2 korrekt auf 5.

Für Python 2:

import math
print(int(math.ceil(4.2)))

In Python 2 gibt die Funktion ceil() einen Float zurück, daher muss sie in eine Ganzzahl umgewandelt werden Verwenden der Funktion int().

Durch die Verwendung von math.ceil können Sie sicherstellen, dass Zahlen konsistent auf die nächste Ganzzahl aufgerundet werden, wodurch das unerwartete Abrundungsverhalten vermieden wird, das bei anderen Methoden auftritt.

Das obige ist der detaillierte Inhalt vonWie garantiere ich das Aufrunden von Zahlen in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn