IPython
IPython is an enhanced interactive REPL for Python that offers rich tooling for exploration, debugging, and productivity and also powers the default Python kernel used by Jupyter tools.
Installation and Setup
Install from the Python Package Index (PyPI) into a virtual environment:
Key Features
- Enhanced interactive REPL with syntax highlighting, Tab completion, history, and rich tracebacks.
- Configurable color themes rewritten in IPython 9, with 256-color pygments styles and Unicode symbols in tracebacks and debugger prompts, plus optional LLM-backed autosuggestions through a Jupyter AI provider.
- Powerful magic commands for timing, profiling, running scripts, and session management.
- Seamless shell access with
!cmdand quick help with?and??introspection. - Extensible architecture with loadable extensions, configurable profiles, and startup scripts.
- Powers the IPython kernel, packaged separately as
ipykernel, that Jupyter front ends such as Notebook and JupyterLab use as their Python execution backend.
Usage
Start an interactive session and run Python expressions:
$ ipython
In [1]: 2 + 2
Out[1]: 4
Run scripts and measure performance with magics:
In [1]: %run script.py
In [2]: %timeit sum(range(1000))
Access the system shell and inspect objects:
In [1]: !ls
In [2]: some_func?
In [3]: list??
Create a profile and set common options in ipython_config.py:
~/.ipython/profile_default/ipython_config.py
c = get_config()
c.TerminalInteractiveShell.confirm_exit = False
c.TerminalInteractiveShell.editing_mode = "vi"
Related Resources
Tutorial
Unlock IPython's Magical Toolbox for Your Coding Journey
IPython is a powerful tool that can prove useful on your journey to mastering Python. Its friendly interface will enable you to comfortably take control of your learning. In this tutorial, you'll cover the basic concepts of using IPython and learn how its features can make coding efficient.
For additional information on related topics, take a look at the following resources:
- Jupyter Notebook: An Introduction (Tutorial)
- The Python Standard REPL: Try Out Code and Ideas Quickly (Tutorial)
- Using Jupyter Notebooks (Course)
- Python 3.14: REPL Autocompletion and Highlighting (Tutorial)
- Getting the Most Out of the Python Standard REPL (Course)
- Discover bpython: A Python REPL With IDE-Like Features (Tutorial)
- The Python Standard REPL: Try Out Code and Ideas Quickly (Quiz)
- Python 3.14 Preview: REPL Autocompletion and Highlighting (Quiz)
- Using the bpython Enhanced REPL (Course)
By Leodanis Pozo Ramos • Updated Sept. 8, 2026