Python extension for Visual Studio Code

A Visual Studio Code extension with rich support for the Python language (for all actively supported versions of the language: 2.7, >=3.5), including features such as IntelliSense, linting, debugging, code navigation, code formatting, Jupyter notebook support, refactoring, variable explorer, test explorer, snippets, and more!

Quick start

Step 1. Install a supported version of Python on your system (note: that the system install of Python on macOS is not supported).

Install a supported version of Python on your system (note: that the system install of Python on macOS is not supported). Step 2. Install the Python extension for Visual Studio Code.

Install the Python extension for Visual Studio Code. Step 3. Open or create a Python file and start coding!

Set up your environment

Select your Python interpreter by clicking on the status bar

Configure the debugger through the Debug Activity Bar

Configure tests by running the Configure Tests command

Jupyter Notebook quick start

Open or create a Jupyter Notebook file (.ipynb) and start coding in our Notebook Editor!

For more information you can:

Useful commands

Open the Command Palette (Command+Shift+P on macOS and Ctrl+Shift+P on Windows/Linux) and type in one of the following commands:

Command Description Python: Select Interpreter Switch between Python interpreters, versions, and environments. Python: Start REPL Start an interactive Python REPL using the selected interpreter in the VS Code terminal. Python: Run Python File in Terminal Runs the active Python file in the VS Code terminal. You can also run a Python file by right-clicking on the file and selecting Run Python File in Terminal . Python: Select Linter Switch from Pylint to Flake8 or other supported linters. Format Document Formats code using the provided formatter in the settings.json file. Python: Configure Tests Select a test framework and configure it to display the Test Explorer.

To see all available Python commands, open the Command Palette and type Python .

Feature details

Learn more about the rich features of the Python extension:

IntelliSense: Edit your code with auto-completion, code navigation, syntax checking and more

Linting: Get additional code analysis with Pylint, Flake8 and more

Code formatting: Format your code with black, autopep or yapf

Debugging: Debug your Python scripts, web apps, remote or multi-threaded processes

Testing: Run and debug tests through the Test Explorer with unittest, pytest or nose

Jupyter Notebooks: Create and edit Jupyter Notebooks, add and run code cells, render plots, visualize variables through the variable explorer, visualize dataframes with the data viewer, and more

Environments: Automatically activate and switch between virtualenv, venv, pipenv, conda and pyenv environments

Refactoring: Restructure your Python code with variable extraction, method extraction and import sorting

Supported locales

The extension is available in multiple languages: de , en , es , fa , fr , it , ja , ko-kr , nl , pl , pt-br , ru , tr , zh-cn , zh-tw

Questions, issues, feature requests, and contributions

If you have a question about how to accomplish something with the extension, please ask on Stack Overflow

If you come across a problem with the extension, please file an issue

Contributions are always welcome! Please see our contributing guide for more details

Any and all feedback is appreciated and welcome! If someone has already filed an issue that encompasses your feedback, please leave a 👍/👎 reaction on the issue Otherwise please file a new issue

If you're interested in the development of the extension, you can read about our development process

Data and telemetry