Heim >Backend-Entwicklung >Python-Tutorial >Wie konvertiere ich einen String mit Kommas und Punkten in einen Float in Python?

Wie konvertiere ich einen String mit Kommas und Punkten in einen Float in Python?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-01 10:36:08345Durchsuche

How to Convert a String with Commas and Dots to a Float in Python?

Konvertieren eines Strings mit Punkt und Komma in einen Float in Python

Problem

Wie können wir einen String wie „123.456.908“ in einen Float-Typ umwandeln? 123456.908 in Python?

Lösung: Verwendung der Lokalisierungsdienste

Mit den Lokalisierungsdiensten von Python können wir gebietsschemaspezifische Konvertierungen durchführen.

< h4>Die Standardeinstellung Gebietsschema

Das Standardgebietsschema verwendet eine „C“-Einstellung, die regionale Formatierungskonventionen nicht berücksichtigt. Daher standardmäßig atof(string):

  • Interpretiert Kommas als Dezimaltrennzeichen.
  • Verarbeitet keine Tausendertrennzeichen.

Um dieses Problem zu beheben , müssen wir das Gebietsschema explizit so festlegen, dass es mit den Daten übereinstimmt origin.

Verwenden eines Gebietsschemas aus der Umgebung

Wir können setlocale(LC_ALL, '') verwenden, um die bevorzugten Gebietsschemaeinstellungen des Benutzers aus der Umgebung zu lesen. Dadurch können länderspezifische Methoden wie locale.atof Tausendertrennzeichen korrekt verarbeiten.

Explizites Festlegen eines Gebietsschemas

Wir können auch ein bestimmtes Gebietsschema mit setlocale( LC_NUMERIC, locale_string). Dies ermöglicht lokalisierte Formatierung und Analyse nur für Zahlen.

Vorbehalte

Das Festlegen des Gebietsschemas kann sich global auf das Programmverhalten auswirken und ist nicht threadsicher. Es sollte sorgfältig und sparsam vorgegangen werden. Im Allgemeinen wird die Verwendung von Internationalisierungsbibliotheken für die ortsunabhängige Datenverarbeitung bevorzugt.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen String mit Kommas und Punkten in einen Float 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