Jupyter Notebook:即使进行了pip安装,仍然找不到模块

16

我在Jupyter笔记本中安装了一个模块

!pip install gensim

Requirement already satisfied: gensim in /home/m.gawinecki/virtualenv/la-recoms/lib/python3.7/site-packages (3.8.2)

但是,当我尝试导入它时,它失败了

import gensim

---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-1-e70e92d32c6e> in <module>
----> 1 import gensim

ModuleNotFoundError: No module named 'gensim'

看起来已经成功安装了:

!pip list | grep gensim

gensim             3.8.2   

我该如何修复它?


检查它是否安装在3.8或3.7中? - classicdude7
我认为原因是我混合使用了virtualenv和conda,同时使用了pip install gensimconda install gensim - dzieciou
你是在虚拟环境之外调用它吗? - classicdude7
@classicdude7 我正在调用通过conda安装的Jupyter笔记本,但我的虚拟环境中安装了其他依赖项。 - dzieciou
有所帮助的是 conda deactivate 命令,并在活动的虚拟环境中运行 jupyter notebook - dzieciou
在Jupiter 6.3.0中,我只需在笔记本单元格中输入“pip install gensim”和“pip install python-Levenshtein”,以避免警告,然后在新单元格中输入“import gensim”即可正常使用。 - stop-cran
2个回答

14
以此方式将您的虚拟环境添加为Python内核(确保它已被激活):
(venv)
$ ipython kernel install --name "local-venv-kernel" --user

现在,当您启动Jupyter笔记本或工作室时,可以选择创建的内核 "local-venv-kernel"。
您可以在笔记本单元中使用此代码检查已安装的库:
!pip freeze 

1
太棒了,谢谢。只有这个解决方案在我的Mac上有效。 - Karthik Arumugham
2
这个建议 https://dev59.com/VVgQ5IYBdhLWcg3wtmSq 也可以解决问题,但对于正在更新现有内核的情况来说,它的干扰性较小。 - Yu Shen
我同意。然而,我更喜欢保持清晰分离和标识虚拟环境。这是一个好的实践。 - negas

1

可能有帮助的事情:

  • 如果使用virtualenv / conda或类似的python环境:检查是否在正确的环境中打开笔记本。检查您的控制台并激活正确的环境/停用错误的环境
  • 卸载并重新安装导致问题的软件包
  • 在安装软件包时,请检查您已经拥有的其他软件包是否受到影响,也许存在某些版本问题,您需要删除或更改其他软件包

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接