Microsoft Delivers Python Tools for Visual Studio

Microsoft releases its Python Tools for Visual Studio, giving Python developers an integrated development environment based on Microsoft's Visual Studio tool set.

Microsoft has delivered a new set of tools for Python developers that bring the richness and thoroughness of typical Microsoft development tools to the Python language.

In an Aug. 29 blog post, S. "Soma" Somasegar, senior vice president of Microsoft's Developer Division, announced the release of Python Tools for Visual Studio (PTVS), which is now available for download from CodePlex. CodePlex is Microsoft's open-source project hosting site. PTVS was released under the Apache 2.0 license.

Key PTVS features include:

  • Support for CPython, IronPython, Jython and PyPy
  • Advanced editing capabilities, including IntelliSense
  • Multiple refactorings, such as "Extract Method"
  • A built-in REPL (read-eval-print loop) window
  • Debugging and profiling capabilities

The Python ecosystem has been enjoying tremendous growth over the past few years, attracting all types of programmers, from scientists to Web developers to hobbyists, Somasegar said.

"To support this growing community, we've released PTVS, an extension to Visual Studio that provides for Python the wealth of features developers desire in a modern and mature IDE. PTVS is aimed at enthusiast and professional Python developers alike," Somasegar said. "PTVS also includes features specialized for technical computing. Over the past several months, I've blogged about multiple projects related to our technical computing initiative, including Solver Foundation, Dryad, and TPL Dataflow. PTVS is another unique and exciting project in this area. It's a free extension to Visual Studio that can be used with the Visual Studio Integrated Shell (available for free download) as well as with Visual Studio Professional and higher."

Somasegar said Visual Studio has a rich editing experience that it extends to the Python language via IntelliSense and other features.

In addition, "One of the most important aspects of Python development is interactivity, and PTVS integrates a Python REPL [read-eval-print loop) directly into Visual Studio," Somasegar said. "The REPL window will work for all of the aforementioned Python variants and supports auto-completion, syntax highlighting and visualizations. For users accustomed to the enhanced REPL provided by IPython, PTVS supports IPython 0.11. For developers using IronPython, the REPL supports Sho."

PTVS also targets technical computing. Somasegar said one of the main focuses of Microsoft's technical computing efforts has been parallel and distributed computing, and this PTVS release includes multiple features targeted at this area. "In addition to standard debugging support, PTVS enables MPI cluster debugging. With this you can create a Python application and easily debug it on your Windows HPC cluster. Press 'F5,' and your application will be deployed to the cluster and launched with debugging support. You'll then be able to debug across all of the relevant processes across all of the involved nodes. This provides a great development experience when doing high performance computation in Python."

And in addition to debugging, PTVS provides a profiler that gives developers a similar profiling experience as they might get with C#, Visual Basic, C++ and JavaScript, Somasegar said.

Microsoft also announced the availability of the NumPy and SciPy Libraries for .NET. This port to .NET by Enthought enables IronPython and other .NET languages to take advantage of these important technical computing libraries, which support mathematical, engineering and scientific domains, Somasegar said.