Heim  >  Artikel  >  Backend-Entwicklung  >  Wie filtere ich Strings basierend auf bestimmten Teilstring-Inhalten in Python?

Wie filtere ich Strings basierend auf bestimmten Teilstring-Inhalten in Python?

Linda Hamilton
Linda HamiltonOriginal
2024-10-20 06:17:02387Durchsuche

How to Filter Strings Based on Specific Substring Content in Python?

Strings mit spezifischem Inhalt filtern

In dieser Programmierfrage suchen wir nach einer Lösung, um eine Liste von Strings basierend auf ihrem Inhalt zu filtern. Ausgehend von einer Liste wie ['a', 'ab', 'abc', 'bac'] besteht unser Ziel darin, eine Liste zu extrahieren, die nur Zeichenfolgen mit einer bestimmten Teilzeichenfolge enthält, z. B. 'ab'.

Python-Implementierung

Um diese Filterung in Python zu erreichen, können wir verschiedene Methoden anwenden. Ein effizienter Ansatz beinhaltet die Verwendung von Listenverständnissen:

<code class="python">lst = ['a', 'ab', 'abc', 'bac']
result = [k for k in lst if 'ab' in k]

# Result: ['ab', 'abc']</code>

In diesem Code durchlaufen wir die ursprüngliche Liste mithilfe eines Verständnisses und prüfen mithilfe des Operators „in“, ob jede Zeichenfolge die Teilzeichenfolge „ab“ enthält. Nur Zeichenfolgen, die diese Bedingung erfüllen, werden in die Ergebnisliste aufgenommen.

Eine weitere Möglichkeit besteht darin, die Filterfunktion zu nutzen:

Python 2:

<code class="python">from itertools import ifilter
lst = ['a', 'ab', 'abc', 'bac']
result = ifilter(lambda k: 'ab' in k, lst)

# Result: ['ab', 'abc']</code>

Python 3:

<code class="python">lst = ['a', 'ab', 'abc', 'bac']
result = list(filter(lambda k: 'ab' in k, lst))

# Result: ['ab', 'abc']</code>

In Python 3 gibt der Filter einen Iterator zurück. Um eine Liste zu erhalten, wandeln wir sie explizit mit der Funktion list() um. Während die Filterfunktion eine weitere Möglichkeit zum Filtern bietet, gelten Listenverständnisse im Allgemeinen als prägnanter und effizienter für diese Art von Vorgang.

Das obige ist der detaillierte Inhalt vonWie filtere ich Strings basierend auf bestimmten Teilstring-Inhalten 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