IPython es un shell interactivo que añade funcionalidades extra al modo interactivo incluido con Python, como resaltado de líneas y errores mediante colores, una sintaxis adicional para el shell, autocompletado mediante tabulador de variables, módulos y atributos; entre otras funcionalidades.
IPython permite la ejecución de aplicaciones en paralelo, pudiéndose estas desarrollar, ejecutar, depurar y ser monitoreadas interactivamente.
Es por esto que el nombre de IPython toma la letra I del inicio, como referencia a interactivo.
Entre estos se incluyen: El cuaderno Notebook de IPython está basado en la web y es interactivo.
Un notebook en IPython es un documento JSON que contiene una lista ordenada de entradas / salidas las cuales pueden tener código, texto, matemáticas, dibujos y rich media.