Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在VS代码的输出窗格中使用正确的python解释器_Python_Json_Visual Studio Code - Fatal编程技术网

无法在VS代码的输出窗格中使用正确的python解释器

无法在VS代码的输出窗格中使用正确的python解释器,python,json,visual-studio-code,Python,Json,Visual Studio Code,1) 我在MacOSX上安装了Python3.7.3,并通过终端确认了这一点(使用“Python3--version”) 2) 然后我在vs代码中选择了3.7.3解释器。我可以看到这个解释器就是在底部状态栏中使用的解释器 3) 当我在VS code中按F5启动调试器中的代码来运行以下代码位时,调试控制台显示我正在运行Python3.7.3。我也可以在终端上运行它,没有问题(python3 app.py) 问题是: 4) 当我尝试打印(sys.version)时,“输出”窗格仍然显示我正在运行Py

1) 我在MacOSX上安装了Python3.7.3,并通过终端确认了这一点(使用“Python3--version”)

2) 然后我在vs代码中选择了3.7.3解释器。我可以看到这个解释器就是在底部状态栏中使用的解释器

3) 当我在VS code中按F5启动调试器中的代码来运行以下代码位时,调试控制台显示我正在运行Python3.7.3。我也可以在终端上运行它,没有问题(python3 app.py)

问题是: 4) 当我尝试打印(sys.version)时,“输出”窗格仍然显示我正在运行Python2.7.10

当我尝试使用f字符串时,我在输出窗格中看到一个语法错误。。。终端和调试控制台都能够按预期打印字符串

如何使输出窗格解释python3.7而不是2.7?我想我需要在settings.json文件中做一些事情,但我不确定从哪里开始

这是我所有的launch.json文件。我认为这是相关的

    "version": "0.2.0",
    "configurations": [


        {
            "name": "Python: Current File (Integrated Terminal)",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        },
        {
            "name": "Python: Remote Attach",
            "type": "python",
            "request": "attach",
            "port": 5678,
            "host": "localhost",
            "pathMappings": [
                {
                    "localRoot": "${workspaceFolder}",
                    "remoteRoot": "."
                }
            ]
        },
        {
            "name": "Python: Module",
            "type": "python",
            "request": "launch",
            "module": "enter-your-module-name-here",
            "console": "integratedTerminal"
        },
        {
            "name": "Python: Django",
            "type": "python",
            "request": "launch",
            "program": "${workspaceFolder}/manage.py",
            "console": "integratedTerminal",
            "args": [
                "runserver",
                "--noreload",
                "--nothreading"
            ],
            "django": true
        },
        {
            "name": "Python: Flask",
            "type": "python",
            "request": "launch",
            "module": "flask",
            "env": {
                "FLASK_APP": "app.py"
            },
            "args": [
                "run",
                "--no-debugger",
                "--no-reload"
            ],
            "jinja": true
        },
        {
            "name": "Python: Current File (External Terminal)",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "externalTerminal"
        }
    ]
}
这是my global settings.json:

{
    "python.pythonPath": "/Library/Frameworks/Python.framework/Versions/3.7/bin/python3",
    "liveServer.settings.donotShowInfoMsg": true,
    "files.autoSave": "afterDelay",
    "code-runner.clearPreviousOutput": true,
}
这是my workspace.json:

{
    "folders": [
        {
            "path": "/Users/sethgory/Desktop/school/CPSC50100/Python/Week01"
        }
    ],
    "settings": {}
}
以下是我尝试使用f字符串时的输出:

[Running] python -u "/Users/sethgory/Desktop/school/CPSC50100/Python/Week01/Hello.py"
  File "/Users/sethgory/Desktop/school/CPSC50100/Python/Week01/Hello.py", line 5
    print(f"Today is {variable}")
                               ^
SyntaxError: invalid syntax

[Done] exited with code=1 in 0.909 seconds
以下是运行print(sys.version)时的输出:

当我按F5进行调试时,调试控制台中会显示以下内容(再次运行print(sys.version)):

这是调试(再次运行print(sys.version))时在终端中得到的结果:

最后,当我使用“python3 Hello.py”从终端运行程序时,我得到的结果是(再次运行print(sys.version)):

到目前为止,我已经尝试了一些事情: 我尝试在全局和工作区设置中使用以下三个路径(一次一个),但似乎没有任何路径改变行为:

这是绝对的,我认为:

{
        "python.pythonPath": "/Library/Frameworks/Python.framework/Versions/3.7/bin/python3"
    }
这是环境文件夹的绝对值:

{
        "python.pythonPath": "/Users/sethgory/Desktop/school/CPSC50100/Python/Week01/env/bin/python3"
    }
{
        "python.pythonPath": "env/bin/python3"
    }
这是相对于env文件夹的:

{
        "python.pythonPath": "/Users/sethgory/Desktop/school/CPSC50100/Python/Week01/env/bin/python3"
    }
{
        "python.pythonPath": "env/bin/python3"
    }
我尝试将
别名python='python3'
添加到我的~/.bash_配置文件中,并在终端中获得了一些新的行为。现在我可以使用“python”来引用python3(而之前我需要实际键入“3”),但主要问题仍然存在(vs代码中的输出窗口仍然使用python2.7.2)


我应该提到,我确实正确安装了Python扩展。正确的解释器3.7.3显示在状态栏中。

问题可能是由IDE设置引起的。不知道您到底更改了什么以及如何更改是不可能确定的。不过,我首先要看的是调试器设置。如果没有给出如果需要提示,您必须提供复制问题的精确步骤,类似于。为了给您提供有关在vscode中运行python代码的建议,我个人更喜欢只打开一个terminal选项卡并运行
py filename
,因为它速度更快、功能更强大convenient@UlrichEckhardt,从头开始:安装最新版本的vs代码,ins安装最新版本的python3,运行我提供的最小代码,查看从输出窗格到终端/调试控制台的解释器使用情况差异。我想为此共享我的json设置,但没有找到输出窗格的特定设置。我只是添加了一些我的settings.json来帮助“运行最小代码”--具体如何?请注意您的意图和实际操作之间的区别。如果有疑问,请同时提供(例如“在VS代码中按F5以在调试器中启动代码”)。此外,您的问题包括这些步骤。@UlrichEckhardt感谢您指导我说得更具体一些。
3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 16:52:21) 
[Clang 6.0 (clang-600.0.57)]
{
        "python.pythonPath": "/Library/Frameworks/Python.framework/Versions/3.7/bin/python3"
    }
{
        "python.pythonPath": "/Users/sethgory/Desktop/school/CPSC50100/Python/Week01/env/bin/python3"
    }
{
        "python.pythonPath": "env/bin/python3"
    }
Seth-Gorys-MacBook-Pro:~ sethgory$ python --version
Python 3.7.3
Seth-Gorys-MacBook-Pro:~ sethgory$ python3 --version
Python 3.7.3