Python has got a lot of really powerful packages for scientific computation. Here is reported a selection of most useful/used ones:
Package 1: Numpy
NumPy is the fundamental package needed for scientific computing with Python. The package contains: a powerful N-dimensional array object, sophisticated functions, tools for integrating C/C++ and Fortran code, useful linear algebra, Fourier transform, and random number capabilities.
Windows installer, Mac installer, Ubuntu users write: sudo aptitude install python-numpy
To learn numpy, the best source is its official tutorial.
Package 2: Scipy
SciPy (pronounced “Sigh Pie”) is open-source software for mathematics, science, and engineering. It includes modules for statistics, optimization, integration, linear algebra, Fourier transforms, signal and image processing, ODE solvers, and more. It is also the name of a very popular conference on scientific programming with Python. The SciPy library depends on NumPy.
Windows installer, Mac installer, Ubuntu users write: sudo aptitude install python-scipy
Package 3: Matplotlib
Matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell (ala matlab or mathematica), web application servers, and various graphical user interface toolkits.
Windows installer, Mac installer, Ubuntu users write: sudo aptitude install python-matplotlib
Here you can find the Matplotlib reference guide and a list of examples.
Package 4: iPython
IPython is an interactive shell for the Python programming language that offers enhanced introspection, additional shell syntax, code highlighting, and tab completion.
Windows installer, Platform independent installer (launch setupegg.py), Ubuntu users write: sudo aptitude install ipython
iPython official documentation.
Package 5: Python Imaging Library (PIL)
Perhaps the most used and famous imaging library for python. The core of PIL relies in its ImageFilter and ImageOps modules, useful for image processing. Below are the installers links.
Windows Installer, Mac Installer (coming soon), Ubuntu users write: sudo aptitude install python-imaging
Package 6: Mayavi
Mayavi seeks to provide easy and interactive visualization of 3-D data. It offers an (optional) rich user interface with dialogs to interact with all data and objects in the visualization, embeddable in python application through a simple and clean scripting interface.
Unfortunately there is no automatic installer for Mayavi, unless you have already all the dependencies installed. To install the package manually follow the step-by-step guide reported in this page.
Package 7: PyMorph
PyMorph is an open source image morphology toolbox that implements the basic binary and grayscale morphology operations, working with numpy arrays to hold image data.
Platform independent installer (follow instructions in how_to_install.txt)
PyMorph official website (not maintained), PyMorph updated (from third party) website
There is a nice demonstrations page (well illustrated) which shows the power of PyMorph. The full documentation can be found here.








