Coding

11 Best Free and Open Source Python Integrated Development Environments

Python is a widely used general-purpose, high level programming language. It’s easy to read and learn. It’s frequently used for science, data analysis, and engineering. With a burgeoning scientific community and ecosystem, Python is an excellent environment for students, scientists and organizations that develop technology software.

One of the essential tools for a budding Python developer is a good Integrated Development Environment (IDE). An IDE is a software application that provides comprehensive facilities to programmers for software development.

Many coders learn to code using a text editor. And many professional Python developers prefer to stay with their favourite text editor, in part because a lot of text editors can be used as a development environment by making use of plugins. But many Python developers migrate to an IDE as this type of software application offers, above all else, practicality. They make coding easier, can offer significant time savings with features like autocompletion, and built-in refactoring code, and also reduces context switching. For example, IDEs have semantic knowledge of the programming language which highlights coding problems while typing. Compiling is ‘on the fly’ and debugging is integrated.

An IDE typically offers a:

  • Source code editor (essentially a text editor with additional features such as code completion, structural navigation, and syntax highlighting. Being able to identify keywords, variables, and symbols on your code makes reading and understanding code easier);
  • User-friendly debugger – step through your code as it runs;
  • Compiler and/or interpreter;
  • Build automation tools.

A good IDE tries to accurately predict what the developer is seeking to do without getting in the way. And it should let you easily integrate tools that the software created doesn’t come with.

For this article, we select the finest open source IDEs designed with Python in mind. There are a diverse range chosen including IDEs specifically designed for beginners, as well as IDEs ideal for data science and machine learning. Hopefully, there will be useful software here for any Python programmer, whatever their level of familiarity with the language. Here’s our verdict captured in a legendary LinuxLinks-style ratings chart.

Ratings chart

Let’s explore our 11 selected Python IDEs at hand. For each application, we have written a summary page. Click the links in the table below to learn more about each IDE. If you’re looking for a more general-purpose IDE we have a separate roundup.

Python Integrated Development Environments
PyCharmFull-featured IDE. Two editions are available, one is open source software
JupyterLabInteractive environment for notebooks, coding and data analysis
SpyderPython development environment providing MATLAB-like features
ericFull featured Python editor and IDE, written in Python
ThonnyTk-based IDE designed for novice programmers
PyDevPython plugin for Eclipse
LeoPIM, IDE and outliner
PyzoInteractive editor for scientific Python
PTKInteractive environment for Python
IDLEPython’s Integrated Development and Learning Environment
ZasperFast, notebook-focused IDE with integrated development tools

This article has been updated to reflect the changes outlined in our recent announcement.

Programmers form very strong opinions on their choice of tools. So use the comments box below to let us know your thoughts.

Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
4 Comments
Oldest
Newest Most Voted
Ron Fox
Ron Fox
8 years ago

I like Komodo edit because you’ve got nice integration with unit testing.

Ben Chance
Ben Chance
8 years ago
Reply to  Ron Fox

Komodo Edit doesn’t offer unit testing, that’s only available in Komodo IDE. Source: ActiveState