55 Stimmen

Ermitteln des ersten Listenindex, der eine Teilzeichenkette enthält?

Für Listen wird die Methode list.index(x) gibt den Index in der Liste des ersten Elements zurück, dessen Wert x . Aber wenn ich innerhalb der Listenelemente sehen wollen, und nicht nur auf die gesamte Elemente, wie mache ich die meisten Pythoninc Methode für diese?

Zum Beispiel, mit

l = ['the cat ate the mouse',
     'the tiger ate the chicken',
     'the horse ate the straw']

würde diese Funktion Folgendes zurückgeben 1 versehen mit dem Argument tiger .

0voto

peacefulzephyr Punkte 1

@kennytm bietet eine großartige Antwort, die mir geholfen hat; um von ihr eine Funktion zu bauen, die regex erlaubt, schrieb ich:

def substringindex(inputlist, inputsubstring):
    s = [x for x in inputlist if re.search(inputsubstring, x)]

    if s != []:
        return (inputlist.index(s[0]), s[0])
    return -1

Diese Funktion funktioniert genau wie ihre, unterstützt aber Regex.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X