使用 WSL 2 的 VS Code 中的 Jupyter Notebook 无法正常工作

Kal*_*nik 14 python visual-studio-code jupyter-notebook windows-subsystem-for-linux pengwin

我想在 WSL 2 中运行的 VS Code 中使用 Jupyter Notebook。常规 Python 在 WSL 中工作没有问题,这意味着基本 conda 环境已连接,我可以运行 .py 文件。此外,I\xe2\x80\x99m 能够运行该命令,jupyter notebook该命令将在 WSL 中启动笔记本服务器,从而将本地主机暴露给 Windows 系统。

\n\n

但是,我想在 VS Code 中测试新的 Jupyter Notebook 功能,这对我来说不起作用;VS Code 显示:Jupyter Server: No KernelPython: Not Started(参见下面的屏幕截图)。

\n\n

我的测试机是:

\n\n
    \n
  • Windows 20H1 上的 WSL 2(使用 Pengwin 发行版)(19041.21)
  • \n
  • VS Code 1.41(安装了 Python 扩展)
  • \n
  • 蟒蛇
  • \n
\n\n

我做了什么:

\n\n
    \n
  1. 打开 WSL
  2. \n
  3. 在我的目标目录中打开 VS Code ( code .)
  4. \n
  5. 从命令面板创建一个新的 Notebook 文件Python: Create New Blank Jupyter Notebook
  6. \n
  7. 创建虚拟人print("test")
  8. \n
  9. 运行 Cell 将触发警告:
  10. \n
\n\n

在此输入图像描述

\n\n

I\xe2\x80\x99m 缺少什么吗?

\n

Yel*_*low 5

windows端和WSL端的VSCode扩展是相互独立的,需要在WSL端安装python扩展。

当您在 WSL 端运行 .py 文件时,VSCode 会提示您安装它们,但运行 .ipynb 则不会。这可能就是问题的根源。


Keb*_*ang 3

VS Code 内部人员实际上可以使用 Jupyter 笔记本进行开箱即用。只要记住运行code-insiders .而不是code ..

另一种解决方案是,根据该网站,在 Windows 中启动 VS Code,然后使用 WSL 2 作为远程服务器。