Chapter 3. Your Development Environment

This chapter provides an overview of the text editors, integrated development environments (IDEs), and other development tools currently popular in the Python edit → test → debug cycle.

We unabashedly prefer Sublime Text (discussed in “Sublime Text”) as an editor and PyCharm/IntelliJ IDEA (discussed in “PyCharm/IntelliJ IDEA”) as an IDE but recognize that the best option depends on the type of coding you do and the other languages you use. This chapter lists a number of the most popular ones and reasons for choosing them.

Python does not need build tools like Make or Java’s Ant or Maven because it is interpreted, not compiled,1 so we do not discuss them here. But in Chapter 6, we’ll describe how to use Setuptools to package projects and Sphinx to build documentation.

We also won’t cover version control systems, as these are language-independent, but the people who maintain the C (reference) implementation of Python just moved from Mercurial to Git (see PEP 512). The original justification to use Mercurial, in PEP 374, contains a small but useful comparison between today’s top four options: Subversion, Bazaar, Git, and Mercurial.

This chapter concludes with a brief review of the current ways to manage different interpreters to replicate different deployment situations while coding.

Text Editors

Just about anything that can edit plain text will work for writing Python code; however, choosing the right editor can save ...

Get The Hitchhiker's Guide to Python now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.