Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich das Vorhandensein von Zahlen in einer Zeichenfolge erkennen?
Numerische Zeichen in Zeichenfolgen identifizieren
Viele Programmierprobleme konzentrieren sich auf die Erkennung von Buchstaben in numerischen Zeichenfolgen. Diese Abfrage sucht jedoch nach einer Lösung, die Zahlen in Zeichenfolgen identifiziert, die zahllos sein sollen. Das Ziel besteht darin, das Akzeptieren von Zeichenfolgen zu verhindern, die Ziffern enthalten, wie z. B. „Ich besitze 1 Hund“.
Die häufig für diesen Zweck verwendete Funktion isdigit() gibt nur dann „True“ zurück, wenn alle Zeichen in einer Zeichenfolge Zahlen sind. Stattdessen benötigen wir eine Methode, die das Vorhandensein von Ziffern innerhalb einer Zeichenfolge prüft.
Lösung mit String-Iteration
Ein Ansatz besteht darin, jedes Zeichen in der Eingabe zu durchlaufen string und prüfen, ob es sich um eine Zahl handelt. Dies kann mit der Funktion any() zusammen mit der Methode isdigit() erreicht werden.
def has_numbers(inputString): return any(char.isdigit() for char in inputString)
Beispiel:
has_numbers("I own 1 dog") # True has_numbers("I own no dog") # False
Lösung mit Regular Ausdrücke
Eine prägnantere Lösung kann mithilfe regulärer Ausdrücke implementiert werden. Der folgende Codeausschnitt verwendet die Funktion re.search(), um nach einer beliebigen Ziffer innerhalb einer Zeichenfolge zu suchen.
import re def has_numbers(inputString): return bool(re.search(r"\d", inputString))
Beispiel:
has_numbers("I own 1 dog") # True has_numbers("I own no dog") # False
Beide Lösungen effektiv Bestimmen Sie, ob eine Zeichenfolge Zahlen enthält, sodass Sie Zeichenfolgen ablehnen können, die gegen den beabsichtigten Zweck der Zahlenlosigkeit verstoßen.
Das obige ist der detaillierte Inhalt vonWie kann ich das Vorhandensein von Zahlen in einer Zeichenfolge erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!