繁体   English   中英

Visual Studio Code - 交互式 window:即使安装了 jupyter,更改环境也不起作用

[英]Visual Studio Code - Interactive window: changing the environment does not work even with jupyter installed

我的问题是这样的: 你如何在 Vscode 上改变 Python Interactive 的环境? ,但提供的解决方案似乎对我不起作用。

我在 Ubuntu 20.10 上,使用从 snap 商店安装的 Visual Studio Code 1.53.2。

为了调试它,我使用 conda 从头开始重新创建了我的环境:

name: mytrips

channels:
  - defaults
  - conda-forge

dependencies:
  - python=3.8.*
  - pip

  - numpy==1.19.*
  - pandas==1.2.*
  - cartopy==0.18.*
  - jupyterlab

(我已经把jupyterlab放在那里,所以它应该具有交互式窗口所需的所有依赖项)。

在左下角,解释器正确设置为环境“mytrips”。 我正在使用仅包含以下两行的测试脚本:

import cartopy


print(cartopy.__version__)

当我右键单击并 select “在终端中运行 python 文件”时,这就是(正确)发生的情况:

source /home/rick/anaconda3/bin/activate
(base) rick@linux:~/Documents/src/My trips$ source /home/rick/anaconda3/bin/activate
(base) rick@linux:~/Documents/src/My trips$ conda activate mytrips
(mytrips) rick@linux:~/Documents/src/My trips$ /home/rick/anaconda3/envs/mytrips/bin/python "/home/rick/Documents/src/My trips/test.py"
0.18.0

所以你可以在这里看到cartopy是正确导入的。

当我按 shift+Enter 或右键单击 select 以在交互式 window 中运行当前文件时,它返回ModuleNotFoundError: No module named 'cartopy' ,因为它使用来自基本 conn环境的 Z23EEEB4347BDD26BFC6B7EE9A3B7。 问题 1:我的环境中有 jupyter,但它的行为就好像它没有被检测到一样。

然后,当我单击mytrips环境中的交互式 window 和 select 的右上角时,交互式 Window 会打印出来,就好像它刚刚更改了环境一样:

Started 'Python 3' kernel
Python 3.8.6 (default, Sep 25 2020, 09:36:53) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.20.0 -- An enhanced Interactive Python. Type '?' for help.

但仍然无法导入cartopy ,如果我检查 Interactive Window 它现在使用的是什么可执行文件,结果是:

import sys
sys.executable
'usr/bin/python3'

这就是问题 2:交互式 Window 实际上并没有改变我的环境。

只是为了确认,这里证明环境有jupytercartopy

(mytrips) rick@linux:~/Documents/src/My trips$ conda list | grep jupyter
jupyter_client            6.1.7                      py_0  
jupyter_core              4.7.1            py38h06a4308_0  
jupyterlab                2.2.6                      py_0  
jupyterlab_pygments       0.1.2                      py_0  
jupyterlab_server         1.2.0                      py_0  
(mytrips) rick@linux:~/Documents/src/My trips$ conda list | grep ipython
ipython                   7.20.0           py38hb070fc8_1  
ipython_genutils          0.2.0              pyhd3eb1b0_1 
(mytrips) rick@linux:~/Documents/src/My trips$ conda list | grep cartopy
cartopy                   0.18.0           py38h0d9ca2b_1

关于发生了什么的任何提示?

似乎是最近在 VSCode-Jupyter github 上已经存在几个问题的问题。 主线是下面的链接。 我还在此链接中评论了我的解决方法。

https://github.com/microsoft/vscode-jupyter/issues/4831

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM