我希望能够有一个开箱即用的工作 jupyter notebook 用于 VS 代码,而我这边的工作最少。
我试着打开一个 jupyter notebook。我立即找到了解释器并将我的 conda env 与命令颗粒一起使用( command + shift + P
然后在下拉菜单中找到我的 conda env)。这似乎使终端工作,因为 python 指向正确的位置:
(automl-meta-learning) brandomiranda~/automl-meta-learning ❯ which python
/Users/brandomiranda/miniconda3/envs/automl-meta-learning/bin/python
从 VS Code 运行 python 脚本似乎也工作正常,请参阅输出:
(automl-meta-learning) brandomiranda~/automl-meta-learning ❯ /Users/brandomiranda/miniconda3/envs/automl-meta-learning/bin/python /Users/brandomiranda/automl-meta-learning/python_playground.py
x = 1
my_str = this is a string
y = 2
但是当我尝试使用 jupyter notebook 时,它不起作用。
最明显 的是我的 VS 代码没有连接内核,看截图:
我尝试按照 reddit 上的建议点击几个箭头 (vs_code_jupyter_server_no_kernel_python_not):
当我尝试在我的 jupyter notebook 中运行时,出现以下错误:
Error: Activating Python 3.7.6 64-bit ('base': conda) to run Jupyter failed with Error: StdErr from ShellExec, /Users/brandomiranda/.bashrc: line 31: jump-module.bash: No such file or directory
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
To initialize your shell, run
$ conda init
Currently supported shells are:
- bash
- fish
- tcsh
- xonsh
- zsh
- powershell
See 'conda init --help' for more information and options.
IMPORTANT: You may need to close and restart your shell after running 'conda init'.
.
这很奇怪。我的 shell 甚至不是 bash,所以我不知道为什么向我显示该消息(也许 VS Code 不知道 Mac OS Catalina 使用 zsh?不确定如何为 VS Code 修复该问题)。无论如何,我继续执行我认为错误消息所暗示的操作。所以我做了以下事情:
我运行了 conda init,然后进入 vs code 中的终端,并通过运行 zsh 重新启动了 shell,但 jupyter 内核仍然无法在我的 vs code 笔记本上运行。不知道出了什么问题。
此外,我按照错误消息的建议做了:
(automl-meta-learning) brandomiranda~/automl-meta-learning ❯ conda init zsh
no change /Users/brandomiranda/miniconda3/condabin/conda
no change /Users/brandomiranda/miniconda3/bin/conda
no change /Users/brandomiranda/miniconda3/bin/conda-env
no change /Users/brandomiranda/miniconda3/bin/activate
no change /Users/brandomiranda/miniconda3/bin/deactivate
no change /Users/brandomiranda/miniconda3/etc/profile.d/conda.sh
no change /Users/brandomiranda/miniconda3/etc/fish/conf.d/conda.fish
no change /Users/brandomiranda/miniconda3/shell/condabin/Conda.psm1
no change /Users/brandomiranda/miniconda3/shell/condabin/conda-hook.ps1
no change /Users/brandomiranda/miniconda3/lib/python3.7/site-packages/xontrib/conda.xsh
no change /Users/brandomiranda/miniconda3/etc/profile.d/conda.csh
no change /Users/brandomiranda/.zshrc
No action taken.
但似乎没有什么区别。
知道如何解决这个问题吗?
VS 代码 python 扩展的开发人员建议我遵循他们在这里所做的一切:
https://github.com/microsoft/vscode-python/issues/9566
但我无法弄清楚这是他们要我做的。
我该如何解决?
相关资源:
- reddit: https ://www.reddit.com/r/vscode/comments/eq2bfv/vs_code_jupyter_server_no_kernel_python_not/
- gitissue: https ://github.com/microsoft/vscode-python/issues/9636
- 我最初认为这是一个 conda 问题所以我调查了这个问题: Activate conda environment stopped working in vscode
- https://www.reddit.com/r/vscode/comments/eshxka/how_does_one_connect_a_jupyter_kernel_to_vs_code/
- https://www.quora.com/unanswered/How-does-one-connect-a-Jupyter-Kernel-to-VS-Code-if-one-does-not-connect-automatically
原文由 Charlie Parker 发布,翻译遵循 CC BY-SA 4.0 许可协议
您需要为jupyter选择python解释器,您可以按照以下步骤进行操作
Mac:
CMD+Shift+P
电脑:
CTRL+SHIFT+P
select Interpreter to start jupyter server
然后回车,它会列出所有的解释器,然后选择任何解释器就完成了!