from nltk import word_tokenize
list_1 = [a, b, c, d, e, f]
list_2 = [[aa, bb, cc], [dd, ee], [ff], [gg, hh, ii, jj], [kk, ll], [mm, nn, oo]]
text = 'The lazy aa moves along the hh'
text_token = word_tokenize(text)
for word in text:
if word in [j for i in list_2 for j in i]:
print(list_2.index(word))
else:
print(word)
ValueError: 'hh' is not in list
Ich versuche Textanalyse auf großen Körpern von Französisch Text. Ich habe bereits versucht, den NLTK Stemmer zu verwenden, und er stemmt keine signifikante Anzahl von Wörtern, die ich analysiere.Suche durch verschachtelte Liste
Ich bin nicht vertraut mit Python oder einer der anderen Programmiersprachen (ich komme aus den Geisteswissenschaften), also bin ich mir auch nicht ganz sicher, wie ich nach dem gesuchten Problem suchen soll und ich entschuldige mich, wenn diese Frage entweder überflüssig oder einfach zu lösen ist.
Ich habe versucht, dies zu erreichen, indem ich eine Liste französischer Wörter mit ihren verschiedenen grammatikalischen Formen finde. Ich habe die Liste bereits in zwei getrennte Listen eingeordnet: Die erste Liste enthält die Wurzel des Wortes, das ich gerne annehmen würde, während die zweite Liste die Variantenformen ist, die der Gegenstand in der ersten Liste annehmen kann. Ich habe es so gemacht, dass beide Listen einander entsprechen. Zum Beispiel würde list_1[0]
den Wörtern in list_2[0]
entsprechen. Daher gibt es viele verschachtelte Listen unterschiedlicher Länge innerhalb von list_2.
Mein Problem scheint zu entstehen, wenn ich verschachtelte Listen durchsuche. Ich muss durch text_token
iterieren, um zu überprüfen, ob eines der Wörter in text_token
in list_2
existiert. Wenn text_token
in list_2
existiert, dann finden Sie misc = list_2.index(word)
. Nachdem ich misc
gefunden habe, möchte ich das Wort durch die Suche list_1[misc]
ersetzen. Nachdem ich jedoch bestätigt habe, dass das Wort in list_2
existiert, versuche ich print(list_2.index(word))
zu sehen, ob es funktioniert, aber ich empfange weiterhin ValueError: 'hh' is not in list
Ich bin nicht ganz sicher, wie man verschachtelte Listen durchläuft, nachdem ich dies bereits getan habe, um diesen Fehler zu vermeiden Ich nehme an, dass wenn ich die Definitionen ein zweites Mal durchsuche, die verschachtelte Liste nicht als mehrere Elemente angezeigt wird. Ich habe versucht, dies zu umgehen, indem ich ein anderes Listenverstehen ausprobiere, nachdem ich es im Original überprüft habe, aber es endet damit, einzelne Buchstaben zurückzugeben. Ich habe auch versucht, diese zwei Listen in ein Wörterbuch zu machen, aber ich kann nicht scheinen, herauszufinden, wie man .keys()
von .values()
ergibt.
Sie wollen solche verschachtelten Listen wirklich nicht verwenden! Benutze ein 'dict'! –