Hint: You can adjust the default video playback speed in your account settings.
Hint: You can set the default subtitles language in your account settings.
Sorry! Looks like there’s an issue with video playback 🙁 This might be due to a temporary outage or because of a configuration issue with your browser. Please see our video player troubleshooting guide to resolve the issue.

What Makes a Good Python Editor?

Give Feedback

00:00 In this video, we’ll take a quick look at what makes a good Python editor. I’ll go over this in a list kind of fashion, and later on, we’re going to see most of those features when going through the different actual text editors. What makes a good Python editor?

00:15 You want to be able to save and reload your code files. If you’ve been working on something, you want to be able to go back to where you ended and not have to do the work all over again, as you would have to if you’re writing your code in the Python console.

00:28 So, there’s some persistence of the files, as well as some additional features—maybe it brings it back right to where you ended, et cetera—but definitely you want to be able to save and reload your code files. Next, what is very helpful is if you don’t have to switch around between your terminal and your editor.

00:45 You want to be able to run your code from within the environment, so maybe have a little window that contains your terminal, and then you’re able to type python and the filename, and it’s going to run it, or maybe you’re even able to just press a keyboard shortcut and it runs the file for you.

01:02 Something that’s very helpful as well is the third point here, support in debugging, because we always make some mistakes when coding—there’s always something that goes wrong and there’s always something to debug.

01:13 And just using the plain inbuilt, maybe, pdb debugger in Python is not going to necessarily be the easiest way to go about solving problems, so if your editor has some support to make debugging easier for you, that makes a lot of your life better.

01:29 One thing I already mentioned before is syntax highlighting. You want to be able to actually see what are the different parts of your code with those visual cues. By just seeing colors, it makes working with your code so much quicker, so syntax highlighting is a very important part of a good Python editor.

01:46 Then we have automatic code formatting. You know, you don’t want to necessarily—if you start a for loop, there’s this great thing about Python that we have these indentations that have meaning, but you don’t always want to press those four spaces after you’re opening up a for loop—it should be always there, so just let your editor do the work and automatically format it like that.

02:05 Another important feature for a good IDE or editor is autocompletion. There’s a lot of stuff to type when you’re coding and often you’re reusing names of variables, or you’re using some functions that you imported somewhere, and if you’re just able to press the Tab character and it autocompletes for you, gives you different options if there are different options—that makes coding so much quicker and more enjoyable.

02:29 So a good Python editor should also include a feature of allowing you to autocomplete stuff that you’re typing. Okay, and there’s more, obviously. Like, you can expand this list and make it pretty long and endless probably. It depends on the person you are as well.

02:43 But I think those features are pretty much essential for a good and productive working environment, so it’s something that I’m looking for in an editor, and I would suggest that it’s something you should look for as well.

02:56 In the next video, we’ll go ahead and take a look at some actual options—specific code editors—and I will tell you why I chose to show them to you here, and what are the different use cases and scenarios that you want to use these, maybe some advantages and some disadvantages for using them.

03:13 That’s going to be the main part of the course, so let’s get started looking at Python code editors and IDEs!

Become a Member to join the conversation.