【问题标题】:How to use Python3 on the VScode terminal?如何在 VScode 终端上使用 Python3?
【发布时间】:2019-07-16 16:43:45
【问题描述】:

有没有办法强制 VS Code 只使用 python3?无论我尝试什么,它总是默认为 python2.7。我尝试选择正确的解释器作为 python3.7。当我打开终端时,它立即使用python2.7,在设置中它指向3.7,但是内置终端很好,总是默认为2.7。

【问题讨论】:

    标签: visual-studio-code vscode-settings python-3.7


    【解决方案1】:

    首先,了解integrated terminal of VSCode 默认使用与 Mac 上的终端应用程序相同的环境。

    在 Linux 和 macOS 上使用的 shell 默认为 $SHELL,在 PowerShell 上 Windows 10 和 cmd.exe 在早期版本的 Windows 上。这些可以 通过在用户中设置 terminal.integrated.shell.* 手动覆盖 settings.

    Mac 上的默认$SHELL/bin/bash,它在Python2.7 中使用python。所以 VS Code 将使用相同的 python 来表示 Python2.7。当您打开 bash shell 时,它将加载您的 ~/.bash_profile 以应用您添加到其中的自定义别名和其他配置。

    解决您的问题的一个方法是将您的~/.bash_profile 编辑为别名pythonpython3。但我不推荐这样做,因为这会影响您的所有 bash 会话,甚至是 VS Code 之外的会话。当您运行需要 python 成为系统 Python2.7 的脚本时,这可能会导致令人讨厌的副作用。

    您可以改为将 VSCode 配置为为其自己的集成终端加载自己的别名。首先,在你的主目录中创建一个名为 vscode.bash_profile 的文件:

    $ cat ~/vscode.bash_profile
    alias python=$(which python3)
    

    在我的环境中,python3 是 Python3.7。您可以将其设置为适用于您的环境的内容(例如,可能是 python3.7)。然后,在 VS Code 中,查找 Terminal shell args 设置:

    然后打开你的 settings.json 并添加这些行:

    "terminal.integrated.shellArgs.osx": [
        "--init-file",
        "~/vscode.bash_profile",
    ]
    

    最后,重启 VS Code。下次您打开 VS Code 终端时,python 现在应该正在使用您的 Python 3 安装。这不应该影响您在 VS Code 之外的 bash 会话。

    请注意,如果您有一些来自默认 ~/.bash_profile 的自定义设置,您可能需要将其复制到您的 ~/vscode.bash_profile,以便您仍然可以在 VS Code 上使用它(例如更改为 PATH , git-completion 脚本..).

    【讨论】:

    • 为我工作。确保那里没有 -l 选项。
    • 这个解释对于新手来说太复杂了。有人可以发布另一个答案,准确显示 linux 用户应该点击的内容和位置等吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-22
    • 2022-12-07
    • 2023-01-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多