Jython: Parsen Text zu schweben Kommas
-
03-07-2019 - |
Frage
Wie kann ich einen Schwimmer analysieren aus einem Blatt als Text gescannt, mit Kommas?
txt = "1,903.44"
value = float(txt) # This fails due to ',' in string
UPDATE: Leider habe ich nicht klar war. Ich verwende jython 2.5, die nicht das Gebietsschema Modul hat.
Lösung
txt = "1,903.44"
value = float(txt.replace(',', ''))
Wenn Sie die Lokalisierung benötigen, wird dies nicht wirklich funktionieren, aber es funktioniert der Trick, wenn Sie wissen, dass Kommas sind Ihre Separatoren.
Andere Tipps
Verwenden Sie locale.atof()
nach locale.setlocale(locale.LC_ALL, '')
.
Sie können die Kommas Streifen:
txt = txt.replace(',', '')
value = float(txt)
Ich persönlich würde das Dezimalsystem Paket verwenden, wenn sie mit Geldwerten zu tun zu vermeiden gut dokumentierten Gefahren die auftreten, wenn Gleitpunkte mit.
from decimal import Decimal
txt = txt.replace (',', '')
value = Decimal(txt)
Wie schon in anderen Poster erwähnt, das funktioniert nur, wenn Ihr Gebietsschema ist bekannt, zu verwenden ‚‘ als Tausendertrennzeichen, aber sollen Sie in der richtigen Richtung gehen bekommen.