NLTK Version 3.4.5. Python 3.7.4. OSX Version 10.14.5.
Das Upgrade der Codebasis von 2.7 ist erst jetzt auf dieses Problem gestoßen. Ich habe alle Pakete und Erweiterungen in einer neuen virtuellen Umgebung ohne Cache neu installiert. Ziemlich verwirrt darüber, wie dies nur mir passieren könnte, und ich kann niemanden finden, der den gleichen Fehler online hat.
(venv3) gmoss$ python
Python 3.7.4 (default, Sep 7 2019, 18:27:02)
[Clang 10.0.1 (clang-1001.0.46.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import nltk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/site-packages/nltk/__init__.py", line 150, in <module>
from nltk.translate import *
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/site-packages/nltk/translate/__init__.py", line 23, in <module>
from nltk.translate.meteor_score import meteor_score as meteor
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/site-packages/nltk/translate/meteor_score.py", line 10, in <module>
from nltk.stem.porter import PorterStemmer
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/site-packages/nltk/stem/__init__.py", line 29, in <module>
from nltk.stem.snowball import SnowballStemmer
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/site-packages/nltk/stem/snowball.py", line 314, in <module>
class ArabicStemmer(_StandardStemmer):
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/site-packages/nltk/stem/snowball.py", line 326, in ArabicStemmer
r'[\u064b-\u064c-\u064d-\u064e-\u064f-\u0650-\u0651-\u0652]'
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/re.py", line 234, in compile
return _compile(pattern, flags)
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/re.py", line 286, in _compile
p = sre_compile.compile(pattern, flags)
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/sre_compile.py", line 764, in compile
p = sre_parse.parse(p, flags)
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/sre_parse.py", line 930, in parse
p = _parse_sub(source, pattern, flags & SRE_FLAG_VERBOSE, 0)
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/sre_parse.py", line 426, in _parse_sub
not nested and not items))
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/sre_parse.py", line 536, in _parse
code1 = _class_escape(source, this)
File "/Users/gmoss/Documents/constructor/autocomplete/venv3/lib/python3.7/sre_parse.py", line 337, in _class_escape
raise source.error('bad escape %s' % escape, len(escape))
re.error: bad escape \u at position 1
python
python-3.x
nltk
gmoss
quelle
quelle
Antworten:
Die regulären Python-Ausdrücke unterstützen das
\u
Escape nicht, wie in der Fehlermeldung angegeben.Es ist jedoch seltsam, dass der Fehler vom
nltk
Paket stammt. Die Autoren dieses Pakets wissen mit Sicherheit, wie man reguläre Ausdrücke schreibt. Haben Sie versehentlich die Python 2.7-Version von aufgenommen?nltk
Pakets gefunden, obwohl sie Kaminstaller in Ihrem 3.7-Verzeichnis enthält?Ich gehe davon aus, dass das
nltk
Paket Unit-Tests für den gesamten Code enthält. Ich würde einen Fehlerbericht gegen dieses Paket einreichen.quelle
nltk-3.4.5-cp37-none-any.whl
Falls jemand anderes darauf stößt, wird das Problem durch ein Downgrade auf 3.4.2 behoben, da dies vor der Einführung von ArabicStemmer in die entsprechende Datei erfolgt. Ich habe ein Problem mit nltk eröffnet und hoffe, dass es behoben wird.
quelle
Für die Nachverfolgung war dies ein Fehlalarm: Ein fehlerhaftes Bereinigungsskript löschte die gemeinsam genutzte Objektdatei von NLTK in meiner virtuellen Umgebung und ich denke, sie fiel auf eine andere Version zurück.
quelle