Ich möchte mir aus einer Liste alle Positionen ausgeben lassen wo ein bestimmter String-teil enthalten ist.
Als Beispiel:
Liste[ Auto, Haus, Affe, Baum , Strasse , Tor)
Wenn Liste 'au' enthält gib mir die Position und das Wort an.
Resultat:
0 Auto
1 Haus
3 Baum
Gibt es da eine Funktion mit der ist dies machen kann, leider wüsste ich nicht wie ich das 'enthält' ausdrücken kann.
Liste abfragen ob enthalten
- __blackjack__
- User
- Beiträge: 14135
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Thomas_Lindinger: Ob eine Zeichenkette in einer anderen enthalten ist, kann man mit dem ``in``-Operator prüfen. Eine fertige Funktion oder Methode für Dein Anliegen gibt es nicht, aber mit `enumerate()`, ``in``, und einer „list comprehension“ oder einem Generatorausdruck, lässt sich das recht einfach und kompakt als ein Ausdruck formulieren.
“It is easier to change the specification to fit the program than vice versa.” — Alan J. Perlis
@Thomas_Lindinger: eine mögliche Lösung könnte so aussehen:
Code: Alles auswählen
ml = ['Auto', 'Haus', 'Affe', 'Baum' , 'Strasse' , 'Tor']
def search_subsequence(iterable, subsequence):
return ((index, value) for index, value in enumerate(iterable) if subsequence in value.lower())
for index, value in search_subsequence(ml, 'au'):
print(index, value)