Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich Gleitkommazahlen effizient aus Strings in Python extrahieren?

Wie kann ich Gleitkommazahlen effizient aus Strings in Python extrahieren?

DDD
Freigeben: 2024-11-25 10:00:15
Original
965 Leute haben es durchsucht

How Can I Efficiently Extract Floating-Point Numbers from Strings in Python?

So extrahieren Sie Gleitkommazahlen präzise aus Zeichenfolgen

In bestimmten Szenarien ist das Extrahieren von Gleitkommazahlen aus Zeichenfolgen erforderlich. Möglicherweise stoßen Sie auf Zeichenfolgen wie „Aktueller Pegel: 13,4 dB“. wobei nur der Zahlenwert von Interesse ist. Reguläre Ausdrücke (RegEx) bieten eine einfache Lösung für diese Aufgabe.

RegEx-Ansatz

Wenn Ihre Gleitkommazahlen immer in der Form „a.b“ erscheinen, können Sie dies tun Verwenden Sie das folgende RegEx-Muster:

re.findall("\d+\.\d+", "Current Level: 13.4db.")
Nach dem Login kopieren

Dieses Muster erfasst jede numerische Folge, die eine oder mehrere Ziffern enthält, gefolgt von einem Dezimalpunkt und dann eine oder mehrere Ziffern. In unserem Beispiel wird die Zeichenfolge „13.4“ zurückgegeben.

Erweitertes RegEx für robuste Extraktion

Berücksichtigen Sie für mehr Flexibilität das folgende Muster:

re.findall(r"[-+]?(?:\d*\.*\d+)", "Current Level: -13.2db or 14.2 or 3")
Nach dem Login kopieren

Dieses Muster verarbeitet einen größeren Bereich von Gleitkommadarstellungen, einschließlich:

  • Negativ Zeichen (-)
  • Ganze Zahlen (z. B. „3“)
  • Zahlen ohne Dezimalpunkte (z. B. „13“)

Es wird eine Liste zurückgegeben aller übereinstimmenden Zahlen: ['-13.2', '14.2', '3'].

Direkte Konvertierung zur Validierung

Alternativ können Sie einen Token direkt in einen Float umwandeln, um Benutzereingaben zu validieren:

user_input = "Current Level: 1e100 db"
for token in user_input.split():
    try:
        print(float(token), "is a float")
    except ValueError:
        print(token, "is something else")
Nach dem Login kopieren

Dieser Code versucht, jeden Token in der Eingabezeichenfolge in einen Float umzuwandeln und gibt aus, ob der Token ein gültiger Float ist oder nicht.

Durch den Einsatz der geeigneten Methode für Ihre spezifischen Anforderungen können Sie Gleitkommazahlen effektiv mit der gewünschten Präzision und Flexibilität aus Zeichenfolgen extrahieren.

Das obige ist der detaillierte Inhalt vonWie kann ich Gleitkommazahlen effizient aus Strings in Python extrahieren?. 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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage