2016-12-20 3 views
2

ich Python 2.6.6 installiertUngültige Syntax: import TextBlob in Python 2.6.6

ich das textblob Paket von Here heruntergeladen

Ich installierte das Paket mit dem folgenden Befehl

python setup.py install 

Innerhalb meiner Site-Pakete kann ich folgendes Ei sehen:

textblob-0.11.1-py2.6.egg 

Allerdings, wenn ich das Paket am importieren, es gibt ich die folgenden Fehler

> from textblob import TextBlob 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/lib/python2.6/site-packages/textblob-0.11.1-py2.6.egg/textblob/__init__.py", line 9, in <module> 
    from .blob import TextBlob, Word, Sentence, Blobber, WordList 
    File "/usr/lib/python2.6/site-packages/textblob-0.11.1-py2.6.egg/textblob/blob.py", line 28, in <module> 
    import nltk 
    File "/usr/lib/python2.6/site-packages/nltk-3.2.1-py2.6.egg/nltk/__init__.py", line 114, in <module> 
    from nltk.collocations import * 
    File "/usr/lib/python2.6/site-packages/nltk-3.2.1-py2.6.egg/nltk/collocations.py", line 38, in <module> 
    from nltk.util import ngrams 
    File "/usr/lib/python2.6/site-packages/nltk-3.2.1-py2.6.egg/nltk/util.py", line 1361 
    d = {k: _default_to_regular(v) for k, v in d.items()} 
           ^
SyntaxError: invalid syntax 

Gibt es etwas fehlt hier?

UPDATE 1:

installiert ich erfolgreich textblob 0.8.4

Während NLTK 2.0.5 installieren, erhalte ich Fehler folgende

Befehl:

python setup.py install 

Fehler :

`Installed /usr/lib/python2.6/site-packages/distribute-0.6.21-py2.6.egg 
Traceback (most recent call last): 
    File "setup.py", line 69, in <module> 
    test_suite = 'nltk.test.simple', 
    File "/usr/lib64/python2.6/distutils/core.py", line 152, in setup 
    dist.run_commands() 
    File "/usr/lib64/python2.6/distutils/dist.py", line 975, in run_commands 
    self.run_command(cmd) 
    File "/usr/lib64/python2.6/distutils/dist.py", line 995, in run_command 
    cmd_obj.run() 
    File "build/bdist.linux-x86_64/egg/setuptools/command/install.py", line 73, in run 
    File "build/bdist.linux-x86_64/egg/setuptools/command/install.py", line 101, in do_egg_install 
    File "build/bdist.linux-x86_64/egg/setuptools/command/easy_install.py", line 345, in run 

    File "build/bdist.linux-x86_64/egg/setuptools/command/easy_install.py", line 565, in easy_install 

    File "build/bdist.linux-x86_64/egg/setuptools/command/easy_install.py", line 617, in install_item 

    File "build/bdist.linux-x86_64/egg/setuptools/command/easy_install.py", line 664, in process_distribution 

TypeError: __init__() takes exactly 2 arguments (4 given) 
` 
+1

Haben Sie nltk separat installiert? Wo hast du es installiert? – BrenBarn

+0

ja ich habe nltk 3.2.1 installiert aber jetzt habe ich es gelöscht. Ich installiere 2.0.5, aber mit Problemen konfrontiert –

+1

Siehe meine Antwort. Sie müssen auch TextBlob downgraden. –

Antwort

3

nltk-3.2.1 unterstützt nicht Python 2.6 (die SyntaxError ist aufgrund der Tatsache, dass dictionary comprehension was not yet introduced to Python until 2.7). Entweder aktualisieren Sie Ihre Python 2.7 oder Herabstufung nltk-2.0.5:

pip install nltk==2.0.5 

Edit: Nach erforscht TextBlob ‚s setup.py und CHANGELOG.rst Dateien, stellt sich heraus, werden Sie wahrscheinlich auch need to downgrade TextBlob to 0.8.4 die Abhängigkeit von nltk>=3.0 zu vermeiden, wenn Sie beschlossen, nicht zu Aktualisieren Sie Ihr Python.

Edit 2: Um den setuptools Fehler zu lösen, verwenden Sie stattdessen python distribute_setup.py.

Edit 3: Sie müssen nltk nicht installieren, wenn Sie TextBlob <= 0.8.4 installiert haben. Weil es eine Version nltk des Herstellers enthält.

+2

Ich denke, Sie haben Recht, aber es scheint seltsam, dass es eine Datei namens 'nI ltk-3.2.1-py2.6.egg' gibt, wenn diese NLTK-Version diese Python-Version nicht unterstützt. – BrenBarn

+0

Ich kann Python –

+1

@Hardik nicht aktualisieren und dann sowohl 'nltk' als auch 'textblob' herabstufen. –