Jupyter ist ein Ökosystem für interaktives, dokumentbasiertes Programmieren. Der Name steht für die drei Kernsprachen Julia, Python und R. Aus dem früheren IPython Notebook wurde 2014/2015 das Jupyter Notebook, seit 2018 ergänzt um die moderne Oberfläche JupyterLab. Jupyter-Notebooks sind JSON-Dokumente (Endung .ipynb), die Code-, Markdown- und Ausgabezellen kombinieren — ideal für Data Science, Lehre und Dokumentation.

Notebook und JupyterLab starten

jupyter notebook          # klassische Notebook-Oberfläche im Browser
jupyter lab               # JupyterLab (IDE-artige Oberfläche)
jupyter kernelspec list   # installierte Kernel anzeigen

Arbeiten mit Zellen

  • Jede Zelle ist entweder Code oder Markdown; die Umschaltung erfolgt per Y (Code) bzw. M (Markdown) im Command-Modus.
  • Shift+Enter führt die aktuelle Zelle aus und springt zur nächsten; Enter wechselt in den Edit-Modus, Esc zurück in den Command-Modus.
  • Neue Zellen: A (oberhalb), B (unterhalb); löschen mit dd.
  • Der Kernel ist die sprachspezifische Rechen-Engine (IPython für Python, IRkernel für R, IJulia für Julia). Über das Kernel-Menü lassen sich Kernel neu starten oder wechseln.

Magics und Export

Im Notebook stehen die IPython-Magics zur Verfügung: %timeit misst Ausführungszeiten, %matplotlib inline bettet Diagramme direkt in die Ausgabezelle ein. Für die Weitergabe exportiert man Notebooks in andere Formate:

jupyter nbconvert --to html notebook.ipynb
jupyter nbconvert --to script notebook.ipynb   # nur den Code extrahieren

Verwandte Werkzeuge

Die Grundlage aller Jupyter-Kernel ist die interaktive IPython-Shell, Umgebungen verwaltet man bequem mit Conda. Die zugrunde liegende Sprache ist Python; Cloud-Dienste wie Google Colab bieten Jupyter-Notebooks ohne lokale Installation. In der Datenanalyse ist Jupyter der Standard-Arbeitsplatz — vergleichbar mit MATLAB oder R für numerische Berechnungen. Auch für maschinelles Lernen ist die Notebook-Umgebung der übliche Einstieg.