News

VS Code Python Tool Improves Data Science Experience

Microsoft updated its Python Extension for Visual Studio Code, building out new data science functionality that was introduced in a previous release.

The Python extension is by far the most popular offering on the Visual Studio Code Marketplace, downloaded by nearly 30 million developers (about 13 million more times than No. 2).

Microsoft has gone all in on Python for its open source, cross-platform code editor, and actually hired the original author of the extension, Don Jayamanne, back in 2017 and subsequently took ownership of the project.

Among a steady stream of improvements since then, the October 2018 release of the Python extension boosted the data science capabilities with functionality such as Jupyter support with the Python Interactive window.

The Jupyter Project is best known for the Jupyter Notebook, described as: "An open-source Web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, data visualization, machine learning, and much more."

In the new January 2019 edition of the Python extension, program manager Luciana Abud noted that functionality was improved by the Python engineering team.

"The data science experience was first introduced in the last October release, and one of the top feedback requests we’ve heard was to provide the ability to iterate rapidly by experimenting with code in an interactive console environment," Abud said in a Jan. 29 blog post. "In this update, we extended the Python Interactive window with IPython console support by allowing code to be typed in and executed directly in the window. You can now use the enhanced Interactive window standalone as an IPython console, or send code from the editor for execution."

Another most-requested feature -- to be able to run code in the Python Interactive window without having to define cells -- was also implemented, along with new diagnostics for failed tests with pytest and a much faster outline view with the Microsoft Python Language Server.

That Python Language Server provides the guts of the Python extension, enabling all the underlying Python-related functionality such as IntelliSense by implementing the Language Server Protocol.

Other changes and enhancements listed by Abud include:

  • Add the python.pipenvPath config setting (#978)
  • Improvements to automatic selection of the python interpreter. (#3369)
  • Indent on enter after line continuations. (#3284)
  • Activate pipenv environments in the shell using the command pipenv shell. (#2855)
  • Fix bug affecting multiple linters used in a workspace. (thanks Ilia Novoselov) (#2571)
  • Validate Mac Interpreters in the background. (#3908)
  • Activate any selected Python Environment when running unit tests. (#3330)
  • Use Pylint message names instead of codes (thanks to Roman Kornev) (#2906)

The full list of everything new is available in the changelog. The open source code for the tool is available on GitHub.

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Mastering Blazor Authentication and Authorization

    At the Visual Studio Live! @ Microsoft HQ developer conference set for August, Rockford Lhotka will explain the ins and outs of authentication across Blazor Server, WebAssembly, and .NET MAUI Hybrid apps, and show how to use identity and claims to customize application behavior through fine-grained authorization.

  • Linear Support Vector Regression from Scratch Using C# with Evolutionary Training

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the linear support vector regression (linear SVR) technique, where the goal is to predict a single numeric value. A linear SVR model uses an unusual error/loss function and cannot be trained using standard simple techniques, and so evolutionary optimization training is used.

  • Low-Code Report Says AI Will Enhance, Not Replace DIY Dev Tools

    Along with replacing software developers and possibly killing humanity, advanced AI is seen by many as a death knell for the do-it-yourself, low-code/no-code tooling industry, but a new report belies that notion.

  • Vibe Coding with Latest Visual Studio Preview

    Microsoft's latest Visual Studio preview facilitates "vibe coding," where developers mainly use GitHub Copilot AI to do all the programming in accordance with spoken or typed instructions.

  • Steve Sanderson Previews AI App Dev: Small Models, Agents and a Blazor Voice Assistant

    Blazor creator Steve Sanderson presented a keynote at the recent NDC London 2025 conference where he previewed the future of .NET application development with smaller AI models and autonomous agents, along with showcasing a new Blazor voice assistant project demonstrating cutting-edge functionality.

Subscribe on YouTube