使用spacy导入错误:"没有名为en的模块"

The*_*onk 9 python spacy

我在使用Python spaCy库时遇到了麻烦.它似乎安装正确,但在

from spacy.en import English
Run Code Online (Sandbox Code Playgroud)

我收到以下导入错误:

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
Run Code Online (Sandbox Code Playgroud)

我对Python不是很熟悉,但这是我在网上看到的标准导入,并且安装了库:

$ pip list | grep spacy
spacy (0.99)
Run Code Online (Sandbox Code Playgroud)

编辑 我测试了重命名文件,但这不是问题.这样做时我也会遇到同样的错误:

$ python -m spacy.en.download --force all
/usr/bin/python: No module named en
Run Code Online (Sandbox Code Playgroud)

(该命令应该下载一些模型)

Bur*_*lid 11

您遇到此错误,因为您命名了自己的文件spacy.py.重命名您的文件,一切都应该工作.

  • 你在运行命令的目录表单中有一个`spacy.pyc`文件吗?如果是,请删除它. (3认同)

Won*_*Yau 9

对于Windows,请使用管理员权限打开cmd.然后,

python -m spacy download en 
Run Code Online (Sandbox Code Playgroud)

您应该看到shell提示符.

您现在可以通过spacy.load('en')加载模型


小智 6

我遇到了同样的问题,问题是存储模块“en”的文件夹(spacy/lang/en)。

打字:

从 spacy.lang.en 导入英语

解决了这个问题。

这篇文章有助于解决这个问题。