2013-01-01 4 views
1

Когда я типПроблемы при импорте NLTK пакета в Python

import nltk 

в интерпретаторе, это дает мне это -

>>> import nltk 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/lib/python2.7/dist-packages/nltk/__init__.py", line 105, in <module> 
    from collocations import * 
    File "/usr/local/lib/python2.7/dist-packages/nltk/collocations.py", line 38, in <module> 
    from nltk.metrics import ContingencyMeasures, BigramAssocMeasures, TrigramAssocMeasures 
    File "/usr/local/lib/python2.7/dist-packages/nltk/metrics/__init__.py", line 16, in <module> 
    from nltk.metrics.scores import   (accuracy, precision, recall, f_measure, 
    File "/usr/local/lib/python2.7/dist-packages/nltk/metrics/scores.py", line 16, in <module> 
    from scipy.stats.stats import betai 
    File "/usr/lib/python2.7/dist-packages/scipy/stats/__init__.py", line 7, in <module> 
    from stats import * 
    File "/usr/lib/python2.7/dist-packages/scipy/stats/stats.py", line 198, in <module> 
    import distributions 
    File "/usr/lib/python2.7/dist-packages/scipy/stats/distributions.py", line 87, in <module> 
    from new import instancemethod 
    File "new.py", line 3 

     ^
IndentationError: expected an indented block 

Я посмотрел на new.py, который я нашел в /usr/lib/python2.7/ и нашел все в порядке.

"""Create new objects of various types. 
Deprecated.This module is no longer required except for backward compatibility. 
Objects of most types can now be created by calling the type object. 
""" 
from warnings import warnpy3k 
warnpy3k("The 'new' module has been removed in Python 3.0; use the 'types' " 
      "module instead.", stacklevel=2) 
del warnpy3k 

from types import ClassType as classobj 
from types import FunctionType as function 
from types import InstanceType as instance 
from types import MethodType as instancemethod 
from types import ModuleType as module 

from types import CodeType as code 

Любые решения?

ответ

3

У вас есть файл с именем new.py. Проверьте текущий каталог и переименуйте его или удалите.

Вы можете увидеть это в TRACEBACK:

File "/usr/lib/python2.7/dist-packages/scipy/stats/distributions.py", line 87, in <module> 
    from new import instancemethod 
    File "new.py", line 3 

Предшествующее модуль имеет полный путь файл, но файл new.py не делает, что делает его локальный файл, который затенение относительного импорта в scipy.stats.distributions.

+0

Очень хорошо пятнистый! – Johnsyweb

+0

@Martijn Спасибо, проблема выше решена. К сожалению, теперь я получаю следующую ошибку: >>> import nltk Traceback (последний последний звонок): Файл «», строка 1, in Файл «/usr/local/lib/python2.7/ dist-packages/nltk/__ init__.py ", строка 161, в из загрузки загрузчика загрузить, download_shell Файл" /usr/local/lib/python2.7/dist-packages/nltk/downloader.py ", строка 180 , в urllib2 = nltk.internals.import_from_stdlib ('urllib2') AttributeError: объект 'module' не имеет атрибута 'internals' –

+0

У вас также есть файл 'nltk.py', а также локально. –

Смежные вопросы