883 Stimmen

Wie kann man prüfen, ob eine Zeichenfolge eine Teilzeichenkette von Elementen in einer Liste von Zeichenfolgen ist?

Wie kann ich nach Artikeln suchen, die die Zeichenfolge 'abc' in der folgenden Liste?

xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']

Im Folgenden wird geprüft, ob 'abc' in der Liste steht, aber nicht erkannt wird 'abc-123' et 'abc-456' :

if 'abc' in xs:

28 Stimmen

Um das Gegenteil zu prüfen (ob eine Zeichenkette eine von mehreren Zeichenketten enthält): stackoverflow.com/a/6531704/2436175

0 Stimmen

Wenn die linken Teile der Einträge eindeutig sind, sollten Sie erwägen, ein Dict aus der Liste zu erstellen: Suche nach einem Eintrag in einer Liste anhand einer Teilzeichenkette

0 Stimmen

Siehe auch diese Antwort von Raymond Hettinger (der eigentlich eine Antwort auf diese Frage sein sollte).

5voto

Grant Shannon Punkte 3862

Ich brauchte die Listenindizes die einer Übereinstimmung entsprechen, wie folgt:

lst=['abc-123', 'def-456', 'ghi-789', 'abc-456']

[n for n, x in enumerate(lst) if 'abc' in x]

Ausgabe

[0, 3]

3voto

Lakhani Aliraza Punkte 319

Wenn Sie eine Liste von Daten für mehrere Teilzeichenfolgen erhalten möchten

Sie können es folgendermaßen ändern

some_list = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
# select element where "abc" or "ghi" is included
find_1 = "abc"
find_2 = "ghi"
result = [element for element in some_list if find_1 in element or find_2 in element] 
# Output ['abc-123', 'ghi-789', 'abc-456']

1voto

arun_munagala Punkte 65
mylist=['abc','def','ghi','abc']

pattern=re.compile(r'abc') 

pattern.findall(mylist)

1voto

Sam S Punkte 479

Ich füge Nan zur Liste hinzu, und das unten stehende funktioniert bei mir:

some_list = ['abc-123', 'def-456', 'ghi-789', 'abc-456',np.nan]
any([i for i in [x for x in some_list if str(x) != 'nan'] if "abc" in i])

0voto

my_list = ['abc-123', 'def-456', 'ghi-789', 'abc-456']

for item in my_list:
    if (item.find('abc')) != -1:
        print ('Found at ', item)

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