VSCode running Python 2 instead of 3

Please note the command Run Code is not provided by the Python Extension for VS Code, instead it is provided by the extension Code Runner. They are two separate extensions. You'll need to configure that extension to point to the Python Interpter you have chosen. I.e. as per their docs on the home page you have to update the settings:

{
    "code-runner.executorMap": {
        "python": "<fully qualified path>",
    }
}

Or you have another solution, that's to use the command Python: Run Python file in Terminal. This does not rely on the Code Runner extension and is part of the Python Extension hence using the interpreter you have selected.


Try changing the selected Python environment.

select-python-interpreter

This can be accessed by

  1. Clicking on the Python label at the lower-left of the window
  2. Doing Cmd+Shift+P (Mac) OR Ctrl+Shift+P (Windows/Linux)
  3. Selecting Select Interpreter

Select Python3 instead of Python2 from the dropdown.

More info here:
https://code.visualstudio.com/docs/python/environments#_select-and-activate-an-environment

An "environment" in Python is the context in which a Python program runs.

Selecting an interpreter from the list adds an entry for python.pythonPath with the path to the interpreter inside your Workspace Settings. Because the path is part of the workspace settings, the same environment should already be selected whenever you open that workspace.

The Python extension uses the selected environment for running Python code (using the Python: Run Python File in Terminal command), providing language services (auto-complete, syntax checking, linting, formatting, etc.) when you have a .py file open in the editor, and opening a terminal with the Terminal: Create New Integrated Terminal command. In the latter case, VS Code automatically activated the selected environment.