Jupyter Notebook无法识别新添加内核中的软件包

4

我有一个anaconda基础环境和另一个环境,其中我已经安装了tensorflow,现在我正在尝试在更改内核后将其导入到我的jupyter笔记本中。

我使用以下命令在我的conda基础环境中安装了jupyter笔记本:

conda install -c conda-forge jupyterhub 并通过简单地执行以下命令: pip install jupyter

之后,我使用以下命令添加了带有tensorflow和一些其他附加包的新环境: python -m ipykernel install --user --name env_cod --display-name "Python (env_cod)"

所以现在我通过(jupyter-notebook)在所需目录中启动jupyter笔记本,我也尝试在终端中激活env_cod环境后启动jupyter-notebook。但是,在从内核选项卡中选择更改内核并尝试创建新的jupyter笔记本时,即使我选择了env_cod环境,我仍然无法导入tensorflow,而是收到此错误消息: no module named tensorflow

我已经尝试在我的基础环境和env_cod环境中卸载和安装jupyter。

另外,我的env_cod环境没有任何问题,当我在通过PyCharm选择env_cod环境运行我的脚本时,tensorflow以及其他附加包都能正常工作。问题仅出现在Jupyter Notebook中。


通过 import sys; print(sys.executable) 在笔记本中检查你的解释器路径。如果它没有指向你的新环境,那就是问题所在。 - James
1
即使更改内核,它仍然按预期指向基本环境。 - DevPy
1个回答

3

通过编辑.jason文件并提供正确的环境可执行文件路径解决了问题。

编辑。

我所做的就是进入C:\Users\YOUR_USERNAME\AppData\Roaming\jupyter\kernels, 您将找到所有已添加到Jupyter Notebook中的内核。
现在只需进入未加载正确Python可执行文件的文件夹,您将在该文件夹中找到kernel.json文件。
打开那个文件即可。

{
 "argv": [
  "D:\\Path\\To\\Correct\\python.exe",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "ENV_NAME",
 "language": "python"
}

由于某些原因,我原本使用的是基础Python环境的可执行文件路径,所以我将其更改为虚拟环境的Python可执行文件路径,然后它在我的Jupyter Notebook中加载了正确的环境。


请问您能否更具体一些? - yo1122
2
回答已编辑以解释,希望能有所帮助。 - DevPy
你好!你能提供一个正确的环境路径Python可执行文件的例子吗?我认为我遇到了相同的问题,并将我的路径从C:\ Users \ name \ miniconda3 \ python.exe更改为C:\ Users \ name \ miniconda3 \ envs \ env_name \ python.exe,但是它并不喜欢! - mcat

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