2017-04-23 23 views
-1

每当我尝试导入nltk软件包时,我都会收到来自scipy的异常。命令和错误如下所示:导入scipy.stats时出现“from new import instancemethod”后出错

>>> 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 114, in <module> 
from nltk.collocations import * 
File "/usr/local/lib/python2.7/dist-packages/nltk/collocations.py", line  39, 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/local/lib/python2.7/dist-packages/scipy/stats/__init__.py", line 344, in <module> 
from .stats import * 
File "/usr/local/lib/python2.7/dist-packages/scipy/stats/stats.py", line 176, in <module> 
from . import distributions 
File "/usr/local/lib/python2.7/dist-packages/scipy/stats/distributions.py", line 10, in <module> 
from ._distn_infrastructure import (entropy, rv_discrete, rv_continuous, 
File "/usr/local/lib/python2.7/dist-packages/scipy/stats/_distn_infrastructure.py", line 43, in <module> 
from new import instancemethod 
File "new.py", line 107 
return copy.deepcopy(self) 
^ 
IndentationError: expected an indented block 

我在终端(ubuntu 16.04 LTS系统)中执行此命令。我没有发现有关此错误的任何信息,并且缩进看起来不错。

+0

python告诉你,你需要正确缩进代码! –

+2

我知道@ΦXocę웃Пepeúpaツ,但问题是我插入了一个导入代码,我不认为有任何缩进问题。 –

回答

2

SyntaxError在你的文件new.py(我想这是在你当前的工作目录中)。尝试切换到不存在new.py文件的目录(或将new.py文件移动到另一个目录中),然后内部scipy导入应该没有问题。

另一方面,你可以升级到scipy 0.19.x.他们取消了进口,它应该没有问题。


请注意,命名Python文件如builtin-modules总是一个坏主意!这是异常情况或意外行为的常见来源。

+0

感谢您回答@MSeifert。我已经将new.py文件移动到另一个文件夹,现在代码工作正常。再次感谢你。 –