Python-Interaktionsfenster
Jupyter (früher IPython Notebook) ist ein Open-Source-Projekt, mit dem Sie Markdown-Text und ausführbaren Python-Quellcode einfach auf einer einzigen Zeichenfläche, einem sogenannten Notebook, kombinieren können. Visual Studio Code unterstützt die Arbeit mit Jupyter-Notebooks nativ sowie über Python-Code-Dateien. Dieses Thema behandelt die Unterstützung über Python-Code-Dateien und zeigt, wie Sie
- Mit Jupyter-ähnlichen Codezellen arbeiten
- Code im Python-Interaktionsfenster ausführen
- Variablen mit dem Variablen-Explorer und dem Daten-Viewer anzeigen, inspizieren und filtern
- Verbindung zu einem Remotedienst für Jupyter-Server herstellen
- Ein Jupyter-Notebook debuggen
- Ein Jupyter-Notebook exportieren
Um mit Jupyter-Notebooks zu arbeiten, müssen Sie eine Anaconda-Umgebung in VS Code oder eine andere Python-Umgebung, in der Sie das Jupyter-Paket installiert haben, aktivieren. Um eine Umgebung auszuwählen, verwenden Sie den Befehl Python: Interpreter auswählen aus der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)).
Sobald die entsprechende Umgebung aktiviert ist, können Sie Jupyter-ähnliche Codezellen erstellen und ausführen, eine Verbindung zu einem Remotedienst für Jupyter-Server herstellen, um Codezellen auszuführen, und Python-Dateien als Jupyter-Notebooks exportieren.
Jupyter-Codezellen
Sie definieren Jupyter-ähnliche Codezellen innerhalb von Python-Code mit einem # %%-Kommentar
# %%
msg = "Hello World"
print(msg)
# %%
msg = "Hello again"
print(msg)
Hinweis: Stellen Sie sicher, dass Sie den oben gezeigten Code in einer Datei mit der Erweiterung .py speichern.
Wenn die Python-Erweiterung eine Codezelle erkennt, fügt sie die CodeLens-Dekorationen Zelle ausführen und Zelle debuggen hinzu. Die erste Zelle enthält auch Darunter ausführen und alle nachfolgenden Zellen enthalten Darüber ausführen

Hinweis: Standardmäßig werden beim Debuggen von Zellen nur Benutzercodes durchschritten. Wenn Sie auch Nicht-Benutzercodes durchschreiten möchten, müssen Sie Nur eigenen Code debuggen in den Einstellungen der Jupyter-Erweiterung deaktivieren (⌘, (Windows, Linux Ctrl+,)).
Zelle ausführen gilt nur für die einzelne Codezelle. Darunter ausführen, das in der ersten Zelle angezeigt wird, führt den gesamten Code in der Datei aus. Darüber ausführen gilt für alle Codezellen bis zu, aber nicht einschließlich, der Zelle mit der Dekoration. Sie würden Darüber ausführen beispielsweise verwenden, um den Zustand der Laufzeitumgebung zu initialisieren, bevor Sie diese spezifische Zelle ausführen.
Die Auswahl eines Befehls startet Jupyter (falls erforderlich, was eine Minute dauern kann) und führt dann die entsprechenden Zellen im Python-Interaktionsfenster aus

Sie können Codezellen auch mit (Strg+Eingabe) oder dem Befehl Python: Auswahl/Zeile im Python-Terminal ausführen (Umschalt+Eingabe) ausführen. Nach Verwendung dieses Befehls bewegt die Python-Erweiterung automatisch den Cursor zur nächsten Zelle. Wenn Sie sich in der letzten Zelle der Datei befinden, fügt die Erweiterung automatisch eine weitere # %%-Begrenzung für eine neue Zelle ein, was das Verhalten eines Jupyter-Notebooks nachahmt.
Sie können auch in den Randbereich links von den Zeilennummern klicken, um Haltepunkte festzulegen. Dann können Sie Zelle debuggen verwenden, um eine Debugging-Sitzung für diese Codezelle zu starten. Der Debugger stoppt die Ausführung an Haltepunkten und ermöglicht es Ihnen, den Code Zeile für Zeile durchzugehen und Variablen zu inspizieren (siehe Debugging für Details).
Zusätzliche Befehle und Tastenkombinationen
Die folgende Tabelle listet zusätzliche Befehle und Tastenkombinationen auf, die bei der Arbeit mit Codezellen unterstützt werden.
| Befehl | Tastenkombination |
|---|---|
| Python: Nächste Zelle | Strg+Alt+] |
| Python: Vorherige Zelle | Strg+Alt+[ |
| Python: Auswahl um Zelle darüber erweitern | Strg+Umschalt+Alt+[ |
| Python: Auswahl um Zelle darunter erweitern | Strg+Umschalt+Alt+] |
| Python: Ausgewählte Zellen nach oben verschieben | Strg+; U |
| Python: Ausgewählte Zellen nach unten verschieben | Strg+; D |
| Python: Zelle darüber einfügen | Strg+; A |
| Python: Zelle darunter einfügen | Strg+; B |
| Python: Zelle an Position darunter einfügen | Strg+; S |
| Python: Ausgewählte Zellen löschen | Strg+; X |
| Python: Zelle in Code ändern | Strg+; C |
| Python: Zelle in Markdown ändern | Strg+; M |
Verwendung des Python-Interaktionsfensters
Das Python-Interaktionsfenster, das im vorherigen Abschnitt erwähnt wurde, kann als eigenständige Konsole mit beliebigem Code (mit oder ohne Codezellen) verwendet werden. Um das Fenster als Konsole zu verwenden, öffnen Sie es mit dem Befehl Jupyter: Interaktives Fenster erstellen aus der Befehlspalette. Sie können dann Code eingeben und Eingabe zum Wechseln zu einer neuen Zeile und Umschalt+Eingabe zum Ausführen des Codes verwenden.
Um das Fenster mit einer Datei zu verwenden, verwenden Sie den Befehl Jupyter: Aktuelle Datei im Python-Interaktionsfenster ausführen aus der Befehlspalette.
IntelliSense
Das Python-Interaktionsfenster verfügt über vollständiges IntelliSense – Codevervollständigungen, Memberlisten, Schnelleinführungen für Methoden und Parameterhinweise. Sie können im Python-Interaktionsfenster genauso produktiv tippen wie im Code-Editor.

Plot-Viewer
Der Plot-Viewer gibt Ihnen die Möglichkeit, tiefer mit Ihren Plots zu arbeiten. Im Viewer können Sie Plots in der aktuellen Sitzung verschieben, zoomen und navigieren. Sie können Plots auch in den Formaten PDF, SVG und PNG exportieren.
Doppelklicken Sie im Python-Interaktionsfenster auf einen beliebigen Plot, um ihn im Viewer zu öffnen, oder wählen Sie die Schaltfläche zum Erweitern in der oberen linken Ecke des Plots.

Hinweis: Das Python-Interaktionsfenster unterstützt das Rendern von Plots, die mit matplotlib und Altair erstellt wurden.
Variablen-Explorer und Daten-Viewer
Innerhalb des Python-Interaktionsfensters ist es möglich, die Variablen innerhalb Ihrer aktuellen Jupyter-Sitzung anzuzeigen, zu inspizieren und zu filtern. Wählen Sie die Schaltfläche Variablen in der Werkzeugleiste des interaktiven Fensters, um den Variablen-Explorer zu öffnen. Nach dem Ausführen von Code und Zellen sehen Sie eine Liste der aktuellen Variablen, die sich automatisch aktualisieren, wenn Variablen im Code verwendet werden.

Für zusätzliche Informationen zu Ihren Variablen können Sie auch auf eine Zeile doppelklicken oder die Schaltfläche Variable im Daten-Viewer anzeigen verwenden, um eine detailliertere Ansicht einer Variablen im Daten-Viewer zu erhalten. Sobald geöffnet, können Sie die Werte durch Suchen in den Zeilen filtern.

Verbindung zu einem Remotedienst für Jupyter-Server herstellen
Sie können intensive Berechnungen in einem Jupyter-Notebook auf andere Computer auslagern, indem Sie eine Verbindung zu einem Remotedienst für Jupyter-Server herstellen. Nach der Verbindung werden Codezellen auf dem entfernten Server und nicht auf dem lokalen Computer ausgeführt.
Verbindung zu einem Remotedienst für Jupyter-Server herstellen
-
Führen Sie den Befehl Jupyter: Lokalen oder Remotedienst für Jupyter-Server für Verbindungen festlegen aus der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) aus.
-
Wählen Sie aus, wie Sie eine Verbindung zu einem Jupyter-Server herstellen möchten.

-
Wenn Sie remote arbeiten, geben Sie die URI (Hostname) des Servers mit dem Authentifizierungstoken über einen URL-Parameter
?token=an, wenn Sie dazu aufgefordert werden. (Wenn Sie den Server im VS Code-Terminal mit aktiviertem Authentifizierungstoken starten, erscheint die URL mit dem Token normalerweise in der Terminalausgabe, von wo Sie sie kopieren können.) Alternativ können Sie nach Angabe der URI einen Benutzernamen und ein Kennwort angeben.
-
Das Python-Interaktionsfenster zeigt an, wo Code ausgeführt wird, indem es die URI anzeigt (die im Bild unten unkenntlich gemacht ist)

Hinweis: Zur Erhöhung der Sicherheit empfiehlt Microsoft, Ihren Jupyter-Server mit Sicherheitsvorkehrungen wie SSL und Token-Unterstützung zu konfigurieren. Dies hilft sicherzustellen, dass Anfragen an den Jupyter-Server authentifiziert und Verbindungen zum entfernten Server verschlüsselt werden. Anleitungen zur Absicherung eines Notebook-Servers finden Sie in der Jupyter-Dokumentation.
Jupyter-Notebooks in Python-Code-Dateien konvertieren
Wenn Sie eine Umgebung mit installiertem Jupyter aktiviert haben, können Sie eine Jupyter-Notebook-Datei (.ipynb) in VS Code öffnen und sie dann in Python-Code konvertieren. Sobald Sie die Datei konvertiert haben, können Sie den Code wie jede andere Python-Datei ausführen und auch den VS Code-Debugger verwenden. Das Öffnen und Debuggen von Notebooks in VS Code ist eine praktische Möglichkeit, Codefehler zu finden und zu beheben, was direkt in einem Jupyter-Notebook schwierig ist.
Wenn Sie eine Notebook-Datei öffnen, öffnet Visual Studio Code sie automatisch im Notebook-Editor. Verwenden Sie das Konvertierungssymbol auf der Werkzeugleiste, um die Notebook-Datei (.ipynb) in eine Python-Datei (.py) zu konvertieren.

Wählen Sie das Konvertierungssymbol gefolgt von "Python-Skript", warten Sie einige Sekunden, und dann öffnet VS Code das konvertierte Notebook in einer unbenannten Datei. Die Zellen des Notebooks sind in der Python-Datei mit # %%-Kommentaren begrenzt; Markdown-Zellen werden vollständig in Kommentare mit # %% [markdown] umgewandelt und im interaktiven Fenster zusammen mit Code und Ausgaben wie Diagrammen als HTML gerendert.

Hinweis: Wenn Sie zum ersten Mal Codezellen in einer Python-Datei ausführen, startet die Python-Erweiterung einen Jupyter-Server. Es kann einige Zeit dauern, bis der Server gestartet ist und das Python-Interaktionsfenster mit den Ergebnissen des Codes erscheint.
Ein Jupyter-Notebook debuggen
Der Visual Studio Code-Debugger ermöglicht es Ihnen, Ihren Code schrittweise auszuführen, Haltepunkte festzulegen, den Zustand zu untersuchen und Probleme zu analysieren. Die Verwendung des Debuggers ist eine hilfreiche Methode, um Probleme im Notebook-Code zu finden und zu beheben.
-
Aktivieren Sie in VS Code eine Python-Umgebung, in der Jupyter installiert ist, wie zu Beginn dieses Artikels beschrieben.
-
Importieren Sie die
.ipynb-Datei des Notebooks wie im vorherigen Abschnitt beschrieben in VS Code. (Laden Sie die Datei zuerst herunter, wenn Sie eine cloudbasierte Jupyter-Umgebung wie Azure Notebooks verwenden.) -
Um den Debugger zu starten, verwenden Sie eine der folgenden Optionen
- Für das gesamte Notebook öffnen Sie die Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) und führen Sie den Befehl Jupyter: Aktuelle Datei im Python-Interaktionsfenster debuggen aus.
- Für eine einzelne Zelle verwenden Sie die Dekoration Zelle debuggen, die über der Zelle erscheint. Der Debugger startet speziell für den Code in dieser Zelle. Standardmäßig werden beim Debuggen von Zellen nur Benutzercodes durchschritten. Wenn Sie auch Nicht-Benutzercodes durchschreiten möchten, müssen Sie Nur eigenen Code debuggen in den Einstellungen der Jupyter-Erweiterung deaktivieren (⌘, (Windows, Linux Ctrl+,)).
-
Um sich mit den allgemeinen Debugging-Funktionen von VS Code vertraut zu machen, wie z. B. das Untersuchen von Variablen, das Festlegen von Haltepunkten und andere Aktivitäten, lesen Sie VS Code-Debugging.
-
Wenn Sie Fehler finden, stoppen Sie den Debugger, korrigieren Sie Ihren Code, speichern Sie die Datei und starten Sie den Debugger erneut.
-
Wenn Sie sicher sind, dass Ihr Code korrekt ist. Speichern Sie die Datei und exportieren Sie dann das Notebook, wie im folgenden Abschnitt beschrieben. Sie können das Notebook dann in Ihre normale Jupyter-Umgebung hochladen.
Ein Jupyter-Notebook exportieren
Zusätzlich zum Öffnen eines Jupyter-Notebooks können Sie auch einen der folgenden Befehle aus der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) verwenden, um Inhalte aus einer Python-Datei in VS Code in ein Jupyter-Notebook (mit der Erweiterung .ipynb) zu exportieren.
- Jupyter: Aktuelle Python-Datei als Jupyter-Notebook exportieren: Erstellt ein Jupyter-Notebook aus dem Inhalt der aktuellen Datei und verwendet die Begrenzer
# %%und# %% [markdown], um die jeweiligen Zelltypen anzugeben. - Jupyter: Aktuelle Python-Datei und Ausgabe als Jupyter-Notebook exportieren: Erstellt ein Jupyter-Notebook aus dem Inhalt der aktuellen Datei und schließt die Ausgabe von Codezellen ein.
- Jupyter: Interaktives Fenster als Jupyter-Notebook exportieren: Erstellt ein Jupyter-Notebook aus dem Inhalt des Python-Interaktionsfensters.
Nach dem Exportieren des Inhalts zeigt VS Code eine Aufforderung an, über die Sie das Notebook in einem Browser öffnen können.