Jupyter笔记本中Python版本和环境的VSCode问题

Jupyter笔记本中Python版本和环境的VSCode问题,python,visual-studio-code,jupyter-notebook,version,environment,Python,Visual Studio Code,Jupyter Notebook,Version,Environment,问题:我发现Python的环境和版本与VSCode中的设置不匹配,并导致我试图在Jupyter笔记本中使用的软件包出现问题。我使用的是安装了Python 3.9.1(包括旧版本)的Windows 10计算机,Visual Studio代码为1.52.1。简短摘要-我使用pip安装了一个包。我的猜测是,它与Python的最新版本相关联。我在VS代码中为该版本的python设置了一个解释器,并尝试导入该包。找不到包。如果从Jupyter笔记本调用sys.version,我会看到Python的默认版本

问题:我发现Python的环境和版本与VSCode中的设置不匹配,并导致我试图在Jupyter笔记本中使用的软件包出现问题。我使用的是安装了Python 3.9.1(包括旧版本)的Windows 10计算机,Visual Studio代码为1.52.1。简短摘要-我使用pip安装了一个包。我的猜测是,它与Python的最新版本相关联。我在VS代码中为该版本的python设置了一个解释器,并尝试导入该包。找不到包。如果从Jupyter笔记本调用sys.version,我会看到Python的默认版本正在运行(3.8.5)。简单笔记本抛出一个错误,因为它找不到我随pip一起安装的包

显示关联的屏幕截图:

此错误仅在以下情况下重现:

导入pygmt 命令,即它不依赖于导入的其他包

问题:如果更改解释器不起作用,我如何控制Jupyter笔记本在VSCode中运行的版本?我发现的所有其他类似问题都是由于没有选择正确的解释器。在这种情况下,我有。为什么它不运行那个版本的解释器

多谢各位

编辑 这篇编辑是对@Jill Cheng的回答的回应(关于tl;dr,请参见我下面的评论)。我可以更改解释器(VSCode的左下角)以匹配VSCode想要运行的默认值。没问题。 但仍然存在一些问题

  • 我无法将目标包pygmt安装到此版本的Python中(请参阅终端中的命令)
  • 我不能让VSCode以相反的方向运行——也就是说,即使我选择了Python 3.9.1作为解释器,我也无法让它运行Python 3.9.1

  • 我已经多次重新安装了VSCode,Python 3.8.5似乎始终是默认版本。对我来说,最简单的解决方案似乎是更改VSCode的默认Python版本——事实上,这不是选择解释器的重点吗?对于我来说,为什么我不能将pygmt安装到Python 3.8.5中更为模糊,我不知道使用多个不同版本的Python以及所有不同的软件包是否有益(或者这正是Python用户每天要处理的问题?)。

    在VS代码中,Python内核(Python环境)Jupyter notebook使用的环境可以独立于我们在VS代码中选择的Python环境(如VS代码左下角所示)

    如屏幕截图中的输出所示,您正在使用的Jupyter的Python内核是“Python3.8.5”,但在此环境中没有安装模块“pygmt”。(默认情况下,Jupyter使用最后选择的Python环境。)

    解决方案:单击Jupyter笔记本右上角的Python内核,选择安装模块“pygmt”的Python环境。此外,建议您在切换jupyter的Python内核后重新打开jupyter文件,以便它可以重新加载新的Python内核


    参考资料:。

    同样的事情也发生在我身上。尝试重新安装VS代码。使用最新的64位安装,就像使用64位python一样。也许考虑更早备份设置,使用.Rebug安装VSCode产生了同样的精确结果。设置同步也没有帮助-我无法使用GitHub登录。谢谢你的建议,但我仍然处在这个问题的中间。谢谢你,姬尔。我能够遵循您的建议,它使Python内核(左下方)与代码片段中的
    print(sys.version)
    的输出相匹配。但是,有问题的软件包pygmt无法从该版本获得。请参见上面我编辑的问题中的屏幕截图。因此,这是一个岔路口。我是专门为Python3.8.5安装pygmt,这似乎是VSCode的默认设置,还是尝试了解如何将VSCode的默认设置更改为Python3.9.1?到目前为止,答案是两者都不是。我也做不到(参见编辑问题中的屏幕截图)@brosenheim-模块“pygmt”安装在哪个Python环境中?为什么不能在安装了这个模块的情况下使用python环境呢?关于默认的python解释器,VS代码默认使用最后选择的环境。如果没有选择,VS代码将使用第一个python环境变量。是的,太多的python环境确实不容易管理,建议您尝试使用。该模块安装在python版本中,在我最初的post-3.9.1的第一个屏幕截图中,该版本被选为解释器。我无法在3.8.5中安装它,如我原始帖子的第二个屏幕截图所示。这就是令人沮丧的地方——我知道它就在那里,我告诉VSCode应该使用哪个版本,而VSCode没有听输入。我将研究如何创建一个虚拟环境。@brosenheim-您是如何在“Python3.9”中安装模块“pygmt”的?在本线程中,我们主要讨论Jupyter中的python版本。这个问题解决了吗?@brosenheim-在VS代码中,我们可以单击Jupyter的右上角并选择所需的python内核。