›  Demo-PY1: Python-Tutorial
›   Jupyter Notebook verwenden

Im ersten Teil von Demo-PY1 Python-Tutorial wurden die Grundlagen der Programmiersprache Python erläutert und zwar unter Verwendung von Jupyter Notebook als Entwicklungs- und Laufzeitumgebung. Hier in Demo-PY1: Python-Tutorial: Jupyter Notebook verwenden wird der Einstieg in Jupyter Notebook vermittelt.

Was ist ein Jupyter Notebook?

Jupyter Notebook ist eine webbasierte Umgebung, die das Erstellen, Dokumentieren und Teilen von Demonstratoren unterstützt, und zwar insbesondere im Umfeld der Datenanalyse. In einem Jupyter Notebook kann man Code schreiben und ausführen, Daten visualisieren, und diesen Code auch mit anderen teilen. Das Besondere an Jupyter Notebook ist, dass der Code und die Beschreibung des Codes in unabhängige Zellen geschrieben werden, so dass einzelne Codeblöcke individuell ausgeführt werden können.

Als Jupyter Notebook wird kontextabhängig die webbasierte Umgebung bezeichnet, in der die Notizbücher erstellt, geändert und ausgeführt werden, oder auch das interaktive Dokument ("Notizbuch", "Jupyter Notebook"), das man darin erstellt hat. Jupyter Notebooks haben die Datei-Endung ipynb, z.B. Demo-PY1.ipynb oder Python-Tutorial.ipynb.

Jupyter Notebook-Anwendung starten

Zunächst starten wir die Jupyter Notebook-Anwendung, entweder über den Anaconda-Navigator, oder auch direkt über Programme > Jupyter Notebook. Die Jupyter Notebook-Anwendung wird im Webbrowser geöffnet, mit der Adresse http://localhost:8888/tree, und sieht ähnlich aus wie in der Abbildung unten. Die Anwendung zeigt das Startverzeichnis an, unter dem Notebooks abgelegt werden können. In diesem Startverzeichnis wird ein Ordner "elab2go" angelegt, den wir als Workspace verwenden, der alle unsere Jupyter Notebooks enthält. In diesem Workspace legen wir weitere Unterordner an, die zusammengehörende Notebooks und Daten-Dateien gruppieren. Im Ordner Demo-PY1 liegen z.B. alle Dokumente (Jupyter Notebooks, csv-Dateien etc.) die zu Demo-PY1 gehören.

Startseite der Jupyter Notebook-Anwendung Erläuterung


Die Startseite der Jupyter Notebook-Anwendung ist in drei Reiterkarten ("Files", "Running" und "Clusters") organisiert.

  • In der "Files"-Ansicht werden die Jupyter Notebooks erstellt und verwaltet.
  • Unter dem Menüpunkt "New" können neue Jupyter Notebooks, Textdateien oder Ordner erstellt werden.
  • In der "Running"-Ansicht werden die gerade laufenden Jupyter Notebooks angezeigt.

Jupyter Notebook in 3 Schritten erstellen

Nachdem die Jupyter Notebook-Anwendung läuft, erstellen wir ein erstes "Notizbuch" und zeigen daran die grundlegende Funktionalität.


Schritt 1: Neues Notebook erstellen

Über den Menüpunkt "New > Python 3" erstellen wir ein neues Python3-Notizbuch mit der Endung ".ipynb". Da wir noch keinen Namen vergeben haben, wird das Notebook automatisch den Default-Namen "Untitled" erhalten. Zunächst wird eine leere Eingabezelle angezeigt, mit "In" beschriftet, vgl. Abbildung.

Der Code in einem Jupyter Notebook wird in Blöcken / Zellen (engl. cells) erstellt und ausgeführt. Zellen sind entweder Code-Zellen, die Python-Code enthalten, oder Markdown-Zellen, die die Dokumentation des jeweiligen Blocks im HTML-Format enthalten.

Jupyter Notebook Erläuterung


Die Menüleiste eines Jupyter Notebooks enthält die Menüpunkte File, Edit, View, Insert, Cell, Widgets.

  • File: hierüber können Notebooks erstellt, verwaltet und in unterschiedlichen Formaten gespeichert werden.
  • Edit: hier sind die Funktionen zum Bearbeiten von Zellen (Kopieren, Löschen, Verschieben).
  • View: hier sind die Funktionen, um die Ansicht zu verändern, z.B. einzelne Bereiche auszublenden.
  • Cell: hier kann der Typ einer Zelle eingestellt werden (Code oder Markdown), und die Zellen können einzeln oder gruppiert ausgeführt werden.

Jupyter Notebooks können über den Menüpunkt File > Download as in verschiedene andere Dateiformate exportiert werden: als PDF, HTML oder LaTex-Datei.

Schritt 2: Code eingeben

Im nächsten Schritt geben wir in die Codezellen Python-Anweisungen ein. Eine einzelne Zelle wird durch Auswählen des Codeblocks und Anklicken des Run-Buttons in der zweiten Menüleiste ausgeführt. Die Ausgabe erfolgt direkt unterhalb des ausgewählten Codeblocks. Unterhalb des Menüpunktes Cells gibt es noch weitere Möglichkeiten, den Code auszuführen: Run All führt alle Zellen aus, Run All Below führt die aktuelle Zelle und alle ihr nachfolgenden Zellen aus.

Jupyter Notebook Erläuterung


Wir geben in die leere Zelle den Befehl print("Hello World") ein und führen den Code durch Anklicken des Run-Buttons aus. Der Text "Hello World" erscheint unterhalb des Codes.

Schritt 3: Weitere Zellen einfügen

In diesem Schritt erweitern wir das Jupyter Notebook, indem wir mehrere Zellen oberhalb und unterhalb der ersten Zelle eingeben, den Zellentyp ändern, und wahlweise einzelne oder alle Zellen ausführen.

Startseite der Jupyter Notebook-Anwendung Erläuterung


  • Füge oberhalb der ersten Codezelle eine weitere Zelle ein, und ändere ihren Typ in Markdown. In diese Zelle schreiben wir eine Dokumentation des Notebooks in HTML-Form.
  • Füge unterhalb der Codezeile mit dem print()-Befehl zwei weitere Codezellen ein und gebe die im Bild gezeigten Anweisungen ein.

Command-Mode und Edit-Mode

In einem Jupyter Notebook arbeitet man in zwei Modi. Im Command-Mode, der mit (ESC) eingeleitet wird, kann man Zellen erstellen, verschieben oder löschen, den Typ einer Zelle festlegen (Code oder Markdown), und Zellen ausführen. Im Edit-Mode werden die Zellen editiert. Der gerade aktive Modus einer Zelle wird durch die Umrahmungsfarbe hervorgehoben. Blau bedeutet: Command-Mode, grün bedeutet: Edit-Mode.
Die verschiedenen Befehle können entweder über Menüpunkte in der Benutzeroberfläche ausgewählt werden, oder über Tastenkürzel der Form STRG+<Buchstabe>. Letzteres geht mit der Zeit schneller.

Um zum Beispiel eine Zelle über Tastenkürzel als Markdown-Zelle festzulegen, wählt man die Zelle aus, klickt dann ESC, und danach M. Besonders nützliche Tastenkürzel sind:

Jupyter Notebook vs. MATLAB Live Script

Von der Funktionalität und Arbeitsweise her ist ein Jupyter Notebook vergleichbar mit einem MATLAB Live Script, das in Demo 5 Teil 1: MATLAB Live Scripts beschrieben ist. In beiden Entwicklungsumgebungen hat man Codezellen, in die man den Quellcode eingibt, und Markdownzellen, die die Dokumentation des Codes enthalten.

YouTube-Video

Der Einstieg in Jupyter Notebook wird durch ein Video (Screencast mit zusätzlichen Erläuterungen) veranschaulicht.

Autoren, Tools und Quellen

Mit Beiträgen von:
 Prof. Dr. Eva Maria Kiss
 M. Sc. Anke Welz
Tools: Python, Anaconda, Jupyter Notebook