Oft liegen Daten in einem Format vor, in dem Zahlen durch Punkte dargestellt werden (.) als Tausendertrennzeichen und Kommas (,) als Dezimaltrennzeichen. Um mathematische Operationen an solchen Daten durchzuführen, müssen diese in ein Gleitkommaformat konvertiert werden. In diesem Artikel wird erläutert, wie diese Konvertierung in Python erreicht wird.
Das Gebietsschemamodul von Python bietet eine Schnittstelle für den Zugriff auf plattformspezifische Lokalisierungseinstellungen. Standardmäßig geht Python von einem „C“-Gebietsschema aus, in dem Punkte nicht als Tausendertrennzeichen erkannt werden. Damit Python Punkte als Trennzeichen erkennt, legen Sie das Gebietsschema so fest, dass es den bevorzugten Einstellungen des Benutzers entspricht:
import locale locale.setlocale(locale.LC_ALL, '')
Dieser Aufruf weist Python an, die bevorzugten Gebietsschemaeinstellungen des Benutzers zu verwenden, die Punkte normalerweise als Tausendertrennzeichen erkennen. Jetzt kann locale.atof verwendet werden, um die Zeichenfolge in eine Gleitkommazahl umzuwandeln:
locale.atof('123,456.789')
Anstatt die bevorzugten Einstellungen des Benutzers zu verwenden, können Sie ein bestimmtes Gebietsschema angeben verwenden. Um beispielsweise das dänische Gebietsschema zu verwenden, in dem Punkte als Tausendertrennzeichen und Kommas als Dezimalpunkte verwendet werden, verwenden Sie Folgendes:
locale.setlocale(locale.LC_NUMERIC, 'en_DK.UTF-8')
Das Ändern der Gebietsschemaeinstellungen kann Nebenwirkungen haben und ist auch nicht zulässig nicht threadsicher. Vermeiden Sie es, das Gebietsschema innerhalb von Funktionen oder Bibliotheken festzulegen, die möglicherweise in Thread-Umgebungen verwendet werden. Darüber hinaus sollten Erweiterungsmodule (C-Module) setlocale nicht aufrufen, um unerwartetes Verhalten zu vermeiden.
Durch die Nutzung von Lokalisierungsdiensten kann Python Zeichenfolgen mit Punkt und Komma in Gleitkommazahlen umwandeln, was eine nahtlose Konvertierung ermöglicht von lokalisierten numerischen Daten. Es ist jedoch wichtig, die oben genannten Einschränkungen zu berücksichtigen und die Lokalisierungsdienste angemessen zu nutzen.
Das obige ist der detaillierte Inhalt vonWie kann ich Zeichenfolgen mit Punkten und Kommas als Tausender- und Dezimaltrennzeichen in Gleitkommazahlen in Python konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!