# Learn more about Python, ipython and the notebook¶

The ipython interpreter is basically a more user-friendly version of the standard Python interpreter with an enhanced interactive shell that makes it easy to visualize data. It also provides the ipython notebook, a browser-based notebook with support for text, mathematical expressions, inline plots and inline Python scripts. We really think it is a very powerful tool and recommend that you spend some time familiarising yourself with ipython and the notebook. Here are some useful links to learn about Python and associated libraries.

- A good starting point to learn about scientific computing with Python and related ideas is Software carpentry, which provides nice video/slides lectures on Python
- For an interactive overview, see the well-written set of lectures on scientific computing with Python using Ipython notebooks
- To learn the Python language itself the recommended starting point is the standard Python tutorial.
- A more detailed set of lectures is the Scipy lecture notes.
- Python has a large number of libraries, which can be used in combination with
TRIQS. For example:
- The Python standard library is already very rich.
- Numpy allows to manipulate multidimensional arrays (cf also the tutorial).
- Scipy includes many packages for scientific computing.
- Matplotlib offers very nice plotting tools that can be integrated into your Python scripts.
- SymPy provides symbolic algebra capabilities.