One of Python’s most useful features is its interactive interpreter. This system allows very fast testing of ideas without the overhead of creating test files as is typical in most programming languages. However, the interpreter supplied with the standard Python distribution is somewhat limited for extended interactive use.
The goal of IPython is to create a comprehensive environment for interactive and exploratory computing. To support this goal, IPython has two main components:
All of IPython is open source (released under the revised BSD license).
IPython’s interactive shell (ipython), has the following goals, amongst others:
Increasingly, parallel computer hardware, such as multicore CPUs, clusters and supercomputers, is becoming ubiquitous. Over the last 3 years, we have developed an architecture within IPython that allows such hardware to be used quickly and easily from Python. Moreover, this architecture is designed to support interactive and collaborative parallel computing.
The main features of this system are:
For more information, see our overview of using IPython for parallel computing.
As of the 0.9 release, IPython requires Python 2.4 or greater. We have not begun to test IPython on Python 2.6 or 3.0, but we expect it will work with some minor changes.
IPython is known to work on the following operating systems:
- Linux
- AIX
- Most other Unix-like OSs (Solaris, BSD, etc.)
- Mac OS X
- Windows (CygWin, XP, Vista, etc.)
See here for instructions on how to install IPython.