An integrated development environment is a program that you can run on your computer to edit, compile, run and debug Python code.

Although an online compiler will allow you get starting quickly with programming, an integrated development environment (IDE) can provide a more powerful environment. This includes the ability to create multi-file projects as well as some nice assistive technologies like code completion. A few IDEs that you can get for free are listed below.

Thonny

The Thonny IDE

The Thonny IDE is a great IDE for beginners; you’ll see me use it quite a bit in class. It’s specifically targeted at people learning Python, so it has a few features that other IDEs don’t. For example, when given an expression like (1 + 3) * (7 - 2) / 4, Thonny can show you every step of the expressio evaluation. This level of detail isn’t needed by most programmers, but it is very helpful for beginners trying to get a sense of how a programming language works.

Thonny doesn’t have some advanced features that we’ll depend on later in the course, but it’s an excellent place to get started.

Spyder

The Spyder IDE

Spyder is a nice Python IDE that provides some neat visualizations (e.g., the values of all variables). You’ll probably see me use it in lectures sometimes. The easiest way to get Spyder is downloading and installing the Anaconda data science platform.

Although Thonny is a good place to get started, you may find yourself wanting to install Spyder as we progress in the course and start depending on Python modules like matplotlib and NumPy.

PyCharm

The PyCharm IDE

I haven’t used PyCharm very much myself, but sensible people I’ve known have used and recommended it. This IDE should have access to all of the software modules that we’ll use in the course, though you may need to install some of them yourself.

When installing PyCharm, make sure that you download the free "Community Edition": we won’t need any of the features of the "Professional" edition.

Visual Studio Code

Visual Studio Code for Python

Microsoft Visual Studio Code is a free, general-purpose IDE that can be used for a lot of languages. Like the other IDEs listed here (and unlike its "big brother" Visual Studio), Visual Studio Code runs on any operating system, not just Windows. To use Python with Visual Studio Code, you’ll need the Python extension. Microsoft has a helpful tutorial on this topic: Getting Started with Python in VS Code.