Zahlen aus Zeichenfolgen in Python extrahieren
Beim Extrahieren von Zahlen aus Zeichenfolgen in Python können zwei Hauptansätze verwendet werden: reguläre Ausdrücke und die isdigit ()-Methode. Die Wahl hängt von den spezifischen Anforderungen der Aufgabe ab.
Reguläre Ausdrücke
Reguläre Ausdrücke bieten eine vielseitige und leistungsstarke Lösung zum Extrahieren von Zahlen. Mit der Funktion re.findall() können Zahlen innerhalb einer Zeichenfolge durch Angabe eines Musters identifiziert werden. Beispielsweise entspricht r'd ' einer beliebigen Folge von einer oder mehreren Ziffern.
import re line = "hello 12 hi 89" numbers = re.findall(r'\d+', line) print(numbers) # [12, 89]
Um Zahlen zuzuordnen, die durch Wortgrenzen wie Leerzeichen oder Satzzeichen getrennt sind, verwenden Sie b:
numbers_delim = re.findall(r'\b\d+\b', line) print(numbers_delim) # [12, 89]
isdigit()-Methode
Die isdigit()-Methode gibt True zurück, wenn alle Zeichen in einer Zeichenfolge Ziffern sind. Es kann in Verbindung mit String-Slicing und Comprehension verwendet werden, um Zahlen aus einer Zeichenfolge zu extrahieren.
line = "hello 12 hi 89" numbers = [] for chr in line: if chr.isdigit(): numbers.append(chr) print(numbers) # ['1', '2', '8', '9']
Um die extrahierten Ziffern in ganze Zahlen umzuwandeln:
numbers = [int(chr) for chr in numbers] print(numbers) # [1, 2, 8, 9]
Fazit
Während sowohl reguläre Ausdrücke als auch die Methode isdigit() zum Extrahieren von Zahlen aus Zeichenfolgen verwendet werden können, ist dies mit regulären Ausdrücken möglich größere Flexibilität und Kontrolle über den Matching-Prozess. Für einfache Extraktionsaufgaben kann jedoch die Methode isdigit() einfacher sein.
Das obige ist der detaillierte Inhalt vonWie kann ich in Python effizient Zahlen aus Strings extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!