2017-08-16 2 views
0

Ich habe zuvor über eine Zeichenfolge geschrieben, die ich aus einem Link extrahiere, für den ich Tokenize anwenden möchte, ohne Glück. So versuchte ein vereinfachtes Beispiel: meine Befehlszeile ist sehr einfach:Tokenize funktioniert nicht mit einer String-Eingabe

a="Any Random text at all , nothing freaking works" 
sentences = nltk.sent_tokenize(a) 

ich konsequent erhalten:

TypeError: Can't convert 'list' object to str implicitly 

ich str.(a) versucht haben, a.split, a=a[0] und geprüft:

>>> type(a) 
<class 'str'> 

stimmt etwas mit meinem Python nicht? Ich habe Beispiele überprüft und das sollte anscheinend funktionieren. Wäre es wirklich zu schätzen, wenn jemand laufen konnte und sehen, ob sie Ergebnisse bekommen und wenn ja, was könnte mit meinem Python

Added image of error

+1

habe gerade versucht, in Python 3.5.1 sein sollte - kein Problem. Sind Sie sicher, dass Ihr Code genau dem entspricht, den Sie hier gepostet haben? –

+0

@ WiktorStribiżew ja! Ich habe keine Ahnung, was falsch ist. –

+0

Kann nicht reproduziert werden. –

Antwort

1

Es ist das Problem in nltk Paket selbst falsch sein. Wie im Bild ist es nicht der übergebene Parameter, sondern das Literal [''] in nltk/data.py, das als Liste angesehen wird und in Zeichenfolge konvertiert wird.

Neuinstallation nltk-Paket kann helfen?

zeigen die 69th Linie nltk/data.py es path = []

+0

Vielen Dank, ich konnte es nicht durch Neuinstallation reparieren, sondern indem ich alle Pfade neu definierte und benötigte Dateipfade manuell wie folgt kopierte und einfügte: nltk.data.path = ['H: \\/nltk_data', 'C: \\ nltk_data', 'D: \\ nltk_data', 'E: \\ nltk_data', 'C: \\ Programme \\ Python35 \\ nltk_data', 'C: \\ Programme \\ Python35 \ \ lib \\ nltk_data ',' C: \\ Programme \\ Python35 \\ taggers \\ gemittelte_erkennungssymbole ',' C: \\ Programme \\ Python35 ',' C:/Programme/Python35/tokenizers/punkt/PY3 '] Ich hatte gehofft, dies zu vermeiden, indem ich einfach nltk.data.path = "C:/Programme/Python35" verwende, aber nicht funktioniert –

+0

Unter Windows, bitte sehen Sie diese https://gist.github.com/alvations/0ed8641d7d2e1941b9f9 – alvas