Wie entferne ich nachgestellte Nullen in der wissenschaftlichen Notation mit dem Decimal-Modul von Python?

Barbara Streisand
Freigeben: 2024-11-07 14:45:03
Original
159 Leute haben es durchsucht

How to Remove Trailing Zeros in Scientific Notation Using Python's Decimal Module?

Dezimalzahlen in wissenschaftlicher Notation formatieren

Beim Arbeiten mit Dezimalzahlen kann es nützlich sein, diese in wissenschaftlicher Notation anzuzeigen, wobei eine Zahl als multiplizierter Dezimalwert dargestellt wird um eine Zehnerpotenz. Dies kann dazu beitragen, große oder kleine Zahlen in einem kompakteren und lesbareren Format anzuzeigen.

Eine häufige Herausforderung besteht darin, unnötige nachgestellte Nullen in der Darstellung in der wissenschaftlichen Notation zu entfernen. So können Sie dies in Python mit dem Decimal-Modul erreichen:

from decimal import Decimal

'%.2E' % Decimal('40800000000.00000000000000')

# returns '4.08E+10'
Nach dem Login kopieren

Im Beispiel geben wir mit %.2E explizit eine Genauigkeit von 2 Dezimalstellen an und stellen so sicher, dass die nachgestellten Nullen entfernt werden.

Für mehr Kontrolle über die Formatierung können Sie eine benutzerdefinierte Funktion verwenden, um nachgestellte Nullen zu entfernen:

def format_e(n):
    a = '%E' % n
    return a.split('E')[0].rstrip('0').rstrip('.') + 'E' + a.split('E')[1]

format_e(Decimal('40800000000.00000000000000'))
# '4.08E+10'

format_e(Decimal('40000000000.00000000000000'))
# '4E+10'

format_e(Decimal('40812300000.00000000000000'))
# '4.08123E+10'
Nach dem Login kopieren

Diese Funktion entfernt alle nachgestellten Nullen, unabhängig davon, ob sie signifikant sind oder nicht. Es zerlegt zunächst die Darstellung in wissenschaftlicher Notation in die Dezimal- und Exponentenkomponente, entfernt Nullen und den Dezimalpunkt aus der Dezimalkomponente und setzt dann die formatierte Zeichenfolge wieder zusammen.

Jetzt können Sie Dezimalzahlen ganz einfach in wissenschaftlicher Notation anzeigen mit gewünschte Präzision und Formatierung, um die ordnungsgemäße Handhabung abschließender Nullen sicherzustellen.

Das obige ist der detaillierte Inhalt vonWie entferne ich nachgestellte Nullen in der wissenschaftlichen Notation mit dem Decimal-Modul von Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!