Home > Articles > Open Source > Python

  • Print
  • + Share This


IDLE is closest to being the "standard" Python IDE; it comes with every Python installation. However, it is hidden very well, especially for Linux users, in the Tools subdirectory of your Python installation (which SuSe, for instance, lumps together with the documentation).

IDLE is available for all versions of Python, and for most platforms. If you're still using Python 1.5.2, upgrade to the separately available IDLE package, because it's much more advanced.

The IDLE interface is spartan (see Figure 10)—when you start the application, all you get is an interactive Python shell in a tkInter window. If you open a file, you'll notice a distinct lack of menus. That's because all important actions have been propped into the Edit menu. Editors, browsers, and debuggers are all opened in a different window, making for a cluttered desktop.

IDLE feels so slow that it almost serves as a negative advertisement for Python and tkInter. Editing is acceptable enough, but opening and closing windows and browsing in the path browser is very slow, with noticeable delays.

Figure 10

IDLE's Interface


The IDLE editor is implemented in Python, including syntax highlighting and calltips. IDLE uses Emacs keybindings—to change them, you have to hack into the IDLE source itself. That also holds true if you want to change the default colors: Hack the source to change them. Although the autoindent is reasonable, it's not as clever as the PythonWorks autoindent: It doesn't de-indent automatically.

Source Browsers

Like Pythonwin, IDLE has two types of source browser: a Python path browser, and a class browser that shows a tree of the current open file. Because these browsers are based on the same code as Pythonwin's browsers, they are just as basic: no arguments to the methods and no docstrings; just the class structure.

Project Handling

IDLE has no notion of project handling at all.


The IDLE debugger is not really usable. Before you know what you're doing, you're knee-deep in the internal IDLE code that's used to print the standard output to the IDLE Python shell. Apart from that, as far as I can see, the debugger doesn't support breakpoints or single-stepping. If you conclude from these comments that IDLE is underdocumented, you're right.

GUI Handling

There is no layout editor or any special support for GUI design.

  • + Share This
  • 🔖 Save To Your Account

Related Resources

There are currently no related titles. Please check back later.