无论我做啥[重复],VSCode Python版本在集成终端中默认为2.7

Posted

技术标签:

【中文标题】无论我做啥[重复],VSCode Python版本在集成终端中默认为2.7【英文标题】:VSCode Python version defaults to 2.7 in the integrated terminal no matter what I do [duplicate]无论我做什么[重复],VSCode Python版本在集成终端中默认为2.7 【发布时间】:2020-01-02 22:11:19 【问题描述】:

我在 MacOS Mojave 10.14.6 上运行 VSCode 1.36.0

当我在 VSCode 中使用集成终端并运行 Python 时,它总是从 MacOS 上的/usr/bin/python 运行 Python 2.7,而不是默认的 anaconda Python。如果我在系统终端中做同样的事情,一切都很好。

我查看了这两个相关问题的答案:

Why Is macOS Visual Studio Code Using Wrong Python Interpreter?

How can I change python version in Visual Studio Code?

我没有运行代码运行程序扩展。我已将python.pythonPath 设置更新为指向Anaconda Python,但无论我做什么,集成终端中的which python 都会返回/usr/bin/python。使用 conda activate myenv 选择不同的 conda 环境也无济于事。

以前没有遇到过这个问题。

【问题讨论】:

【参考方案1】:

通过执行echo $SHELL获取默认终端的shell路径 这应该输出类似/bin/bash

现在检查 VSCode 集成终端是否指向同一个 shell,如果没有,请将 VSCode 的集成 shell 设置为您的终端之一。

编辑(提供完整的解决方案):

vsCode 将每个新的 shell 作为登录 shell 运行 因此,如果您在 .bashrc 中设置 Anaconda 路径,它将不会在集成 shell 中设置。 如果是这种情况,可以设置"terminal.integrated.shellArgs.osx": []强制vsCode运行非登录shell并加载.bashrc

【讨论】:

集成终端和系统终端都返回/bin/bash vsCode 将每个新 shell 作为登录 shell 运行,因此如果您在 .bashrc 中设置 Anaconda 路径,它将不会在集成 shell 中设置。如果是这种情况,您可以设置"terminal.integrated.shellArgs.osx": [] 强制vsCode 运行非登录shell 并加载.bashrc 非常感谢@skat!几个月来一直面临这个问题。不得不使用默认终端数月。现在我可以使用集成终端了!。

以上是关于无论我做啥[重复],VSCode Python版本在集成终端中默认为2.7的主要内容,如果未能解决你的问题,请参考以下文章

无论我做啥,都可以保存 Visual Studio Code 格式。我该如何阻止这个?

应用 CIFilter 后,无论我做啥,图像都会变大

NPM,无论我做啥,都找不到'graceful-fs'

无论我做啥,PayPal IPN 都会不断返回“无效”代码

无论我做啥,我的 Electron 窗口都不会出现,我的代码有问题吗?

为啥无论我做啥都不能改变复选框的颜色? [复制]