这里MindSpore已经安装完毕 关于其安装这里不再赘述(如安装Anaconda,选择合适的Python版本,安装MindSpore,验证安装等 可以看其他博客的文章)
本来怀着正常的心情打开jupyter notebook去敲代码,随着import mindspore出错了,心情就越来越奔溃,这个问题我查了许多天才解决,为了避免后面的人重复走弯路,记录下来。(注: 本文用mindspore举例子)
1.首先查看Anaconda中有多少个虚拟环境,打开Anaconda并运行以下命令:
conda env list
可以看到 我MindSpore已经在Anaconda正常下载下来了,并创建了一个名字为"mindSpore"虚拟环境
使用conda activate mindspore命令进入"mindSpore"虚拟环境
一旦成功激活虚拟环境,将在命令行前看到环境名称,表明已进入该虚拟环境。然后,运行以下命令查看虚拟环境中安装的所有包及其版本信息:
conda list
目前为止,可以看出我mindspore安装是成功了的, 里面有需要的一切内容, 表明mindspore在Anaconda上安装成功
那么Jupyter Notebook中敲代码怎么import mindspore还是不行?
这是因为Jupyter Notebook中无法成功导入mindspore库,那么怎么样才能成功导入呢?
1.重新安装 mindspore
pip install mindspore
或者
conda activate mindspore
2.重启 Jupyter Notebook
第一个安装问题和第二个刷新问题比较好解决,我们重点看第三个:
3.确认 Jupyter Notebook 使用的是相同的虚拟环境:在Jupyter Notebook中,需要确保使用的是在命令行中激活的相同虚拟环境。
3.1 首先在Anaconda中输入python进入Python交互模式环境
输入以下代码来检查虚拟环境:
import sys
print(sys.executable)
这里的路径是"E:\Anaconda\python.exe"
3.2 在Jupyter Notebook中运行以下代码来检查虚拟环境:
这里的路径是"E:\python_interpreter-3.11\python.exe" , 我们可以看到Anaconda的路径 与jupyter notebook 的路径不一致
3.3 如何解决路径不一致呢?
安装 ipykernel:ipykernel包允许我们将虚拟环境添加到Jupyter Notebook的内核中。
(1)激活虚拟环境:使用 conda
命令激活 mindspore
虚拟环境。在命令提示符中运行:
conda activate mindspore
注:
如果正在使用较旧版本的 conda,可能无法使用 conda activate
来激活虚拟环境。在旧版本的 conda 中使用 activate
命令激活虚拟环境
activate mindspore
(2)安装 ipykernel:在虚拟环境中运行以下命令来安装 ipykernel
:
conda install ipykernel
(3)将虚拟环境添加到 Jupyter Notebook 中:
python -m ipykernel install --user --name mindspore --display-name "MindSpore"
这句话的意思将 是将mindspore
虚拟环境添加到 Jupyter Notebook 内核中,并命名为 "MindSpore"。
(4)重新启动 Jupyter Notebook:关闭之前打开的 Jupyter Notebook 窗口,并在命令行中重新启动 Jupyter Notebook。
这时候我们新建文件发现 出现了一个名为"MindSpore"新的文件, 创建文件
这时候再输入import mindspore
发现居然可以import进去了
在Anaconda中输入以下命令 我们发现两者的路径一致了 说明在Anaconda下载的包, 在Jupyter Notebook中可以正常调用了
本文总结:
核心就是Jupyter Notebook的内核问题:Jupyter Notebook的内核可能没有更新,因此无法识别新安装的模块。
解决方法:更新Jupyter Notebook内核。
核心代码如下:
conda activate your_env_name
conda install ipykernel
python -m ipykernel install --user --name your_env_name --display-name "Python (your_env_name)"