我尝试使用gensim (特别是gensim.corpora.dictionary)处理文本,但我一直收到"ModuleNotFoundError: No module named 'gensim.corpora'; 'gensim' is not a package“错误。示例代码如下所示。我在install gensim的命令提示符中使用了pip install gensim。我验证了numPy和sciPy是否已安装并且是最新的。我检查了gensim的文件路径,确认机器上安装了gensim。gensim中还有一个语料库文件夹,没有明显的问题。我通过命令提示符运行Python 3.6.8。我可以调用其他模块,如Pandas、nltk和NumPy,它们与gensim位于相同的文件夹位置,因此我不确定为什么在尝试导入gensim时会遇到问题。我不知道如何解决这个问题。以前有没有人遇到过这个问题?我将非常感谢在这方面的任何帮助。谢谢。
from gensim.corpora.dictionary import Dictionary
from nltk.tokenize import word_tokenize
my_documents=[ 'The movie was about a spaceship and aliens',
'I really liked the movie!',
'Awesome action scenes, but boring characters.',
'The movie was awful! I hate alien films.',
'Space is cool! I liked the movie.',
'More space films, please!']
tokenized_docs=[word_tokenize(doc.lower()) for doc in my_documents]
dic= corpora.Dictionary(tokenized_docs)
print(dic.token2id)
corpus=[dic.doc2bow(doc) for doc in tokenized_docs]
print(corpus)在命令提示符下运行dir /s /b "python"和dir /s /b "pip"后生成的输出可以在下面找到。
C:\Users\Owner>dir /S /b "python“
C:\Users\Owner.vscode\extensions\ms-python.python-2020.3.71659\pythonFiles\lib\python
C:\Users\Owner.vscode\extensions\ms-python.python-2020.3.71659\pythonFiles\lib\python\parso\python
C:\Users\Owner\AppData\Local\Programs\Python
C:\Users\Owner\AppData\Local\Programs\Microsoft VS代码\资源\app\extensions\python
C:\Users\Owner\AppData\Local\Programs\Microsoft VS Code_\resources\app\extensions\python
C:\Users\Owner\AppData\Roaming\Python
C:\Users\Owner>dir /S /b "pip“
C:\Users\Owner\AppData\Local\pip
C:\Users\Owner\AppData\Local\Programs\Python\Python36\Lib\site-packages\pip
C:\Users\Owner\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\pip
发布于 2020-04-16 15:16:10
我发现了问题所在。我的脚本标题为gensim.py,并保存在包含gensim脚本的同一目录中。我修改了脚本的标题,它运行得很好。我猜测import gensim调用是在寻找一个名为gensim的文件,并找到了我的python脚本,但我不太确定。
https://stackoverflow.com/questions/61218334
复制相似问题