2016-08-11 2 views
0

Dieser Code durchläuft jedes Wort in word.words() aus der nltk-Bibliothek und schiebt dann das Wort in ein Array. Dann prüft es jedes Wort in dem Array, um zu sehen, ob es ein tatsächliches Wort ist, indem es die gleiche Bibliothek verwendet, und irgendwie sind viele Wörter seltsame Wörter, die überhaupt nicht real sind, wie "adighe". Was ist denn hier los?Words.word() aus dem nltk-Korpus enthält scheinbar seltsame nicht gültige Wörter

import nltk 
from nltk.corpus import words 

test_array = [] 
for i in words.words(): 
    i = i.lower() 
    test_array.append(i) 

for i in test_array: 
    if i not in words.words(): 
     print(i) 

Antwort

1

Ich glaube nicht, dass hier irgendetwas mysteriöses vor sich geht. Das erste Beispiel, das ich fand, ist "Aani", "der hundeköpfige Affe, der dem ägyptischen Gott Thoth heilig ist". Da es ein Eigenname ist, steht "Aani" in der Wortliste und "aani" nicht.

Laut dictionary.com ist "Adighe" eine alternative Schreibweise von "Adygei", was ein anderes Eigenname ist, das eine Region Russlands bedeutet. Da es auch eine Sprache ist, könnte man argumentieren, dass "Adighe" auch erlaubt sein sollte. Diese besondere Wortliste wird argumentieren, dass es nicht sollte.

+0

Ah, danke. Nicht sicher, warum ich nicht versucht habe, die Zeile i = i.lower() zu entfernen. Danke trotzdem. –

Verwandte Themen