使用 PIP 安装 NLTK 和 NLTK-DATA 后,我运行 python 然后我输入 from nltk.corpus import cmudict 并且它有效。 但是当我写这样的脚本时:
from nltk.corpus import cmudict
d = cmudict.dict()
def nsyl(word):
return [len(list(y for y in x if y[-1].isdigit())) for x in d[word.lower()]]
print nsyl("hello")
我有以下错误:
Traceback (most recent call last):
File "nltk.py", line 1, in <module>
from nltk.corpus import cmudict
File "nltk.py", line 1, in <module>
from nltk.corpus import cmudict
ImportError: No module named corpus
我该如何解决这个问题?
提前致谢
最佳答案
来自您的堆栈跟踪:File "nltk.py", line 1, in <module>
,您已将文件命名为 nltk.py。当 python 搜索模块时,它首先在当前目录中查找,那里有“nltk.py”。它会将其导入为 nltk,并且由于您的代码未定义语料库,因此找不到 nltk.corpus
.
要解决此问题,您应该将文件重命名为其他名称,例如 nltkexperience.py
.还要确保从您的目录中删除“nltk.pyc”(如果它存在),因为它也将被加载(它是您代码的字节编译版本)。之后,它应该可以正常工作。
关于python - NLTK - 没有名为语料库的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24592238/