I've been using Visual Studio Code daily now (for Python development) for about six months — long enough to give it a thorough review. Before, I was using Sublime Text with a few plugins, which worked very well— but, I am continually shocked at just how good VS Code is, in comparison, and I'd like to share with you my observations / opinions.

Note: this post is written for those that use text–editors (e.g. Sublime Text), not IDEs (e.g. PyCharm) daily.

Reasons to Use VS Code for Python Development:

Auto–Complete that Just Works™

VS Code features incredibly fast, accurate, and virtualenv–aware code completion for Python code. If you install a module into your virtualenv from the command–line, the auto–completion for that module is instantly available.

Best of all, it doesn't slow you down when you're typing, like it does in Sublime Text. It's fast, feels native, and is supremely great. Highly recommended productivity tool.

Format on Save

I have VS Code configured to automatically run black on any Python file I'm writing, when I save the file. I don't have to manually re–format my code when I'm refactoring — black does it for me. Best of all, this functionality is built–in to VS Code, no plugin needed.

I can easily disable this with either a keyboard shortcut or just clicking the "Formatting" toggle button at the bottom of the window.

PyTest–Aware Test Discoverer

This feature is great — it allows you to run any single arbitrary test, with a single click!

Pipenv Support!