Import error with spacy: “No module named en”

匿名 (未验证) 提交于 2019-12-03 01:12:01

问题:

I'm having trouble using the Python spaCy library. It seems to be installed correctly but at

from spacy.en import English 

I get the following import error:

Traceback (most recent call last):   File "spacy.py", line 1, in <module>     from spacy.en import English   File "/home/user/CmdData/spacy.py", line 1, in <module>     from spacy.en import English ImportError: No module named en 

I'm not very familiar with Python but that's the standard import I saw online, and the library is installed:

$ pip list | grep spacy spacy (0.99) 

EDIT I tested renaming the file, but that's not the problem. I also get the same error when doing:

$ python -m spacy.en.download --force all /usr/bin/python: No module named en 

(The command is supposed to download some models)

回答1:

You are facing this error because you named your own file spacy.py. Rename your file, and everything should work.



回答2:

For windows, open cmd with admin right. Then,

python -m spacy download en  

You should see the shell prompt stating.

You can now load the model via spacy.load('en')



回答3:

I had the same issue, and the problem was the folder where the module 'en' was stored (spacy/lang/en).

Typing:

from spacy.lang.en import English

fixed the issue.

This post was helpful in figuring this out.



回答4:

It is possible that the version of Python at /usr/bin/python is not the one that has spacy installed. If so, navigating to the directory where your 'normal' version of Python is before running

python -m spacy.en.download 

should fix the problem. (For example, I installed spacy using Anaconda and had to navigate to C:\Anaconda2\ first.)



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!