解决jupyter notebook中ImportError: No module named 'xxx'

在虚拟环境中安装了所需包,但在Jupyter Notebook中导入时出现ImportError: No module named 'xxx'。问题源于Jupyter Notebook使用的Python版本并非虚拟环境版本。解决方案包括检查并确保Notebook中的Python版本与虚拟环境一致,通过修改kernel配置文件中的Python路径来指向虚拟环境。

前述

  • 虚拟环境中安装了ipykernel
# 用这个命令在新建虚拟环境时预装ipykernel包
$ conda create -n venv python=3.6.9 ipykernel --yes
# 或者直接在虚拟环境中用pip命令安装
$ pip install ipykernel 
  • 使用命令python -m ipykernel install --user --name venv --display-name venv将当前虚拟环境导入jupyter notebooke了

问题

在终端中进入虚拟环境后用pip list看到已经安装某一个包了,但是在jupyter notebook选中导入的虚拟环境时还是会出现ImportError: No module named ‘xxx’ 错误

解决

  • 在jupyter notebook中查看当前用的python版本是不是虚拟环境中的版本,正确的情况下应该是~/anaconda3/envs/当前虚拟环境名/bin/python,如果是下面这张图的配置的话就会引起前面说的那个玄学的ImportError问题
    在这里插入图片描述
# 查看当前用的python版本
import sys
print( sys.executable)
  • 在终端中找到当前环境的具体路径
$ jupyter kernelspec list

在这里插入图片描述

  • 进入需要修改的kernel 的 python对应目录,修改kernel.json中python的版本为虚拟环境所在目录python版本
$ cd ~/.local/share/jupyter/kernels/tf-fed3.7
$ gedit kernel.json

在这里插入图片描述
参考链接:https://blog.youkuaiyun.com/sinat_28442665/article/details/87289933

在使用 OpenMV 时,如果遇到 `ImportError: no module named 'cv2'` 的提示,通常意味着 OpenCV(cv2)模块未正确安装或未被 Python 解释器识别。OpenMV IDE 依赖于 Python 环境来运行脚本,因此需要确保 cv2 模块已正确安装并与当前使用的 Python 版本兼容。 以下是解决该问题的几种方法: 1. **安装 OpenCV 模块** 如果 cv2 模块尚未安装,可以通过 pip 安装 OpenCV。建议使用与 OpenMV IDE 兼容的 Python 版本进行安装,通常为 Python 3.x: ```bash pip install opencv-python ``` 如果需要额外扩展功能(如 SIFT、SURF 等专利算法),可安装完整版本: ```bash pip install opencv-contrib-python ``` 2. **检查 Python 环境路径** 确保 OpenMV IDE 使用的 Python 解释器路径与安装 cv2 模块的环境一致。可以在 OpenMV IDE 的设置中查看当前使用的 Python 路径,并在终端中运行以下命令验证 cv2 是否已安装在此环境中: ```bash python -c "import cv2; print(cv2.__version__)" ``` 3. **使用虚拟环境** 创建并激活一个虚拟环境,确保所有依赖项安装在该环境中,并将 OpenMV IDE 配置为使用此虚拟环境。这样可以避免不同项目之间的依赖冲突: ```bash python -m venv openmv_env source openmv_env/bin/activate # Linux/macOS openmv_env\Scripts\activate # Windows pip install opencv-python ``` 4. **重新安装 OpenCV** 如果 cv2 模块已安装但仍然无法导入,可以尝试卸载后重新安装: ```bash pip uninstall opencv-python pip install opencv-python ``` 5. **手动添加 cv2 模块路径** 在某些情况下,Python 可能无法自动找到 cv2 模块的路径。可以尝试手动将 cv2 的安装路径添加到 `sys.path` 中: ```python import sys sys.path.append('/path/to/cv2') # 替换为实际的 cv2 安装路径 import cv2 ``` 6. **更新 OpenMV IDE 和固件** 确保 OpenMV IDE 和设备固件均为最新版本。有时旧版本的 IDE 可能不支持某些 Python 模块或存在兼容性问题。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值