Scikit-surprise导入报错求助:ModuleNotFoundError: No module named 'surprise'
解决scikit-surprise在Jupyter Notebook中导入失败的问题
排查与修复步骤
1. 验证Jupyter使用的Python环境
首先确认Jupyter的Python环境和你安装scikit-surprise的conda环境是否一致:
- 在Jupyter单元格中运行:
import sys print(sys.executable) - 在conda终端中运行:
where python
如果两个路径不匹配,说明Jupyter没使用安装了库的环境。
2. 将conda环境注册为Jupyter内核
激活安装scikit-surprise的conda环境(替换your_env_name为实际环境名):
conda activate your_env_name
安装ipykernel并注册内核:
conda install ipykernel python -m ipykernel install --user --name=your_env_name --display-name="Python (your_env_name)"
重启Jupyter,在右上角切换到对应内核后重试导入。
3. 直接在Jupyter中安装库
若环境匹配仍报错,可在Jupyter单元格内直接执行安装:
!conda install -c conda-forge scikit-surprise -y
或用pip安装(环境允许的情况下):
!pip install scikit-surprise
安装完成后重启内核再尝试导入。
4. 尝试兼容的Python版本
scikit-surprise对Python 3.11的支持可能存在兼容性问题,可创建Python 3.10环境重新安装:
conda create -n surprise_env python=3.10 conda activate surprise_env conda install -c conda-forge scikit-surprise
再按步骤2将该环境添加到Jupyter内核,切换后重试。
内容的提问来源于stack exchange,提问作者backer
相关产品推荐
相关产品推荐

