ist jetzt verfügbar! Lesen Sie über die neuen Funktionen und Fehlerbehebungen vom November.

Jupyter Notebooks in VS Code

Jupyter (früher IPython Notebook) ist ein Open-Source-Projekt, mit dem Sie Markdown-Text und ausführbaren Python-Quellcode einfach auf einer Leinwand namens Notebook kombinieren können. Visual Studio Code unterstützt die native Arbeit mit Jupyter Notebooks sowie über Python-Code-Dateien. Dieses Thema behandelt die native Unterstützung für Jupyter Notebooks und zeigt, wie Sie

  • Jupyter Notebooks erstellen, öffnen und speichern
  • Mit Jupyter Codezellen arbeiten
  • Variablen mit dem Variablen-Explorer und dem Daten-Viewer anzeigen, inspizieren und filtern
  • Verbindung zu einem Remotedienst für Jupyter-Server herstellen
  • Debuggen eines Jupyter Notebooks

Einrichtung Ihrer Umgebung

Um mit Python in Jupyter Notebooks zu arbeiten, müssen Sie eine Anaconda-Umgebung in VS Code oder eine andere Python-Umgebung aktivieren, in der Sie das Jupyter-Paket installiert haben. 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 ein Jupyter Notebook erstellen und öffnen, eine Verbindung zu einem Remote-Jupyter-Server herstellen, um Codezellen auszuführen, und ein Jupyter Notebook als Python-Datei exportieren.

Vertrauen in Arbeitsbereiche

Beim Einstieg in Jupyter Notebooks sollten Sie sicherstellen, dass Sie in einem vertrauenswürdigen Arbeitsbereich arbeiten. Schädlicher Code kann in Notebooks eingebettet werden, und die Funktion Vertrauen in Arbeitsbereiche ermöglicht es Ihnen anzugeben, welche Ordner und deren Inhalte die automatische Codeausführung zulassen oder einschränken sollen.

Wenn Sie versuchen, ein Notebook zu öffnen, wenn VS Code sich in einem nicht vertrauenswürdigen Arbeitsbereich befindet und im eingeschränkten Modus läuft, können Sie keine Zellen ausführen und Rich-Ausgaben werden ausgeblendet.

Erstellen oder öffnen Sie ein Jupyter Notebook

Sie können ein Jupyter Notebook erstellen, indem Sie den Befehl Erstellen: Neues Jupyter Notebook aus der Befehlspalette (⇧⌘P (Windows, Linux Ctrl+Shift+P)) ausführen oder indem Sie eine neue .ipynb-Datei in Ihrem Arbeitsbereich erstellen.

Blank Jupyter Notebook

Wählen Sie als Nächstes einen Kernel mit dem Kernel-Picker oben rechts aus.

Kernel Picker

Nachdem Sie einen Kernel ausgewählt haben, wird der Sprach-Picker unten rechts in jeder Codezelle automatisch auf die vom Kernel unterstützte Sprache aktualisiert.

Language Picker

Wenn Sie ein bestehendes Jupyter Notebook haben, können Sie es öffnen, indem Sie mit der rechten Maustaste auf die Datei klicken und mit VS Code öffnen, oder über den VS Code Datei-Explorer.

Zellen ausführen

Eine einzelne Codezelle ausführen

Sobald Ihr Code hinzugefügt wurde, können Sie eine Zelle mit dem Symbol Ausführen links von der Zelle ausführen, und die Ausgabe wird unter der Codezelle angezeigt.

Run Jupyter code cell

Um eine ausgewählte Codezelle auszuführen, können Sie auch Tastenkombinationen sowohl im Befehls- als auch im Bearbeitungsmodus verwenden. Strg+Enter führt die aktuell ausgewählte Zelle aus. Umschalt+Enter führt die aktuell ausgewählte Zelle aus und fügt sofort eine neue Zelle darunter ein (der Fokus wechselt zur neuen Zelle). Alt+Enter führt die aktuell ausgewählte Zelle aus und fügt sofort eine neue Zelle darunter ein (der Fokus bleibt auf der aktuellen Zelle).

Mehrere Codezellen ausführen

Das Ausführen mehrerer Codezellen kann auf vielfältige Weise erfolgen. Sie können den Doppelpfeil in der Hauptsymbolleiste des Notebook-Editors verwenden, um alle Zellen im Notebook auszuführen, oder indem Sie über oder unter der aktuellen Codezelle Alle ausführen, Alle darüber liegenden ausführen oder Alle darunter liegenden ausführen auswählen.

Run multiple code cells

Zellen in einem Abschnitt ausführen

Um verwandte Zellen in einem Notebook einfacher auszuführen, können Sie Zellen ausführen, die durch eine Markdown-Abschnittsüberschrift gruppiert sind, mit der Aktion Zellen in Abschnitt ausführen. Diese Aktion ist in der Notebook-Gliederungsansicht und für Sticky-Scroll-Elemente verfügbar.

Innerhalb von Sticky-Scroll-Elementen klicken Sie mit der rechten Maustaste auf die gewünschte Überschrift und führen Sie den Abschnitt über die Aktion im Kontextmenü aus. Wählen Sie in der Gliederungsansicht das Symbol in der Symbolleiste aus, das beim Überfahren oder Auswählen angezeigt wird, und führen Sie dann eine einzelne Zelle oder einen Abschnitt von Zellen über die angezeigten Aktionen aus.

Speichern Sie Ihr Jupyter Notebook

Sie können Ihr Jupyter Notebook mit der Tastenkombination Strg+S oder Datei > Speichern speichern.

Exportieren Sie Ihr Jupyter Notebook

Sie können ein Jupyter Notebook als Python-Datei (.py), PDF oder HTML-Datei exportieren. Wählen Sie zum Exportieren ... > Exportieren in der Hauptsymbolleiste aus. Sie sehen dann ein Dropdown-Menü mit Dateiformatoptionen.

Convert Jupyter Notebook to Python file

Hinweis: Für den PDF-Export müssen Sie TeX installiert haben. Wenn nicht, werden Sie benachrichtigt, dass Sie es installieren müssen, wenn Sie die PDF-Option auswählen. Beachten Sie auch, dass SVG-Ausgaben, die nur SVGs enthalten, in der PDF-Datei nicht angezeigt werden. Um SVG-Grafiken in einer PDF-Datei zu haben, stellen Sie sicher, dass Ihre Ausgabe ein Bildformat enthält, das kein SVG ist, oder exportieren Sie zuerst in HTML und speichern Sie es dann mit Ihrem Browser als PDF.

Arbeiten Sie mit Codezellen im Notebook-Editor

Der Notebook-Editor erleichtert das Erstellen, Bearbeiten und Ausführen von Codezellen in Ihrem Jupyter Notebook.

Eine Codezelle erstellen

Standardmäßig enthält ein leeres Notebook eine leere Codezelle, mit der Sie beginnen können, und ein vorhandenes Notebook platziert eine Zelle am Ende. Fügen Sie Ihren Code in die leere Codezelle ein, um zu beginnen.

msg = "Hello world"
print(msg)

Simple Jupyter code cell

Codezellmodi

Beim Arbeiten mit Codezellen kann sich eine Zelle in drei Zuständen befinden: nicht ausgewählt, Befehlsmodus und Bearbeitungsmodus. Ein vertikaler Balken links von einer Codezelle und der Editorrahmen zeigen den aktuellen Zustand einer Zelle an. Wenn kein Balken sichtbar ist, ist die Zelle nicht ausgewählt. Wenn eine Zelle ausgewählt ist, kann sie sich im Befehlsmodus oder im Bearbeitungsmodus befinden.

Unselected Jupyter code cell

Im Befehlsmodus erscheint ein durchgezogener vertikaler Balken links von der Zelle. Die Zelle kann bedient werden und akzeptiert Tastaturbefehle.

Code cell in command mode

Im Bearbeitungsmodus wird ein durchgezogener vertikaler Balken durch einen Rahmen um den Zelleditor ergänzt. Der Inhalt der Zelle (Code oder Markdown) kann geändert werden.

Code cell in edit mode

Um zwischen den Modi zu wechseln, können Sie Ihre Tastatur oder Maus verwenden. Drücken Sie auf Ihrer Tastatur die Enter-Taste, um in den Bearbeitungsmodus zu wechseln, oder die Esc-Taste, um in den Befehlsmodus zu wechseln. Klicken Sie mit der Maus auf den vertikalen Balken links von der Zelle oder außerhalb des Code-/Markdown-Bereichs in der Codezelle.

Zusätzliche Codezellen hinzufügen

Sie können Codezellen über die Hauptsymbolleiste, eine Zellsymbolleiste (beim Überfahren sichtbar) und über Tastaturbefehle hinzufügen.

Add code cells

Um eine neue Zelle unter der aktuell ausgewählten Zelle hinzuzufügen, verwenden Sie das Plus-Symbol in der Hauptsymbolleiste oder die Hover-Symbolleiste einer Zelle.

Wenn sich eine Codezelle im Befehlsmodus befindet, verwenden Sie die Taste A, um eine Zelle darüber hinzuzufügen, und die Taste B, um eine Zelle unter der ausgewählten Zelle hinzuzufügen.

Eine Codezelle auswählen

Sie können eine ausgewählte Codezelle mit der Maus oder den Pfeiltasten (hoch/runter) auf der Tastatur ändern. Wenn sich eine Codezelle im Befehlsmodus befindet, können Sie auch die Taste J (runter) und die Taste K (hoch) verwenden.

Mehrere Codezellen auswählen

Um mehrere Zellen auszuwählen, beginnen Sie mit einer Zelle im Auswahlmodus. Ein gefüllter Hintergrund zeigt ausgewählte Zellen an. Um aufeinanderfolgende Zellen auszuwählen, halten Sie die Umschalttaste gedrückt und klicken Sie auf die letzte Zelle, die Sie auswählen möchten. Um eine beliebige Gruppe von Zellen auszuwählen, halten Sie die Strg-Taste gedrückt und klicken Sie auf die Zellen, die Sie Ihrer Auswahl hinzufügen möchten.

Multiselected cells

Eine Codezelle verschieben

Sie können Zellen in einem Notebook per Drag & Drop nach oben oder unten verschieben. Bei Codezellen befindet sich der Drag & Drop-Bereich links vom Zelleditor, wie unten gezeigt. Bei gerenderten Markdown-Zellen können Sie überall klicken, um Zellen zu ziehen und abzulegen.

Move a code cell

Um mehrere Zellen zu verschieben, können Sie die gleichen Drag & Drop-Bereiche in jeder Zelle verwenden, die in der Auswahl enthalten ist.

Die Tastenkombination Alt+Pfeil verschiebt auch eine oder mehrere ausgewählte Zellen.

Eine Codezelle löschen

Um Code zu löschen, können Sie das Symbol Löschen in der Symbolleiste der Codezelle verwenden. Wenn sich die ausgewählte Codezelle im Befehlsmodus befindet, können Sie die Tastenkombination dd verwenden.

Delete a code cell

Letzte Änderung rückgängig machen

Sie können die Taste z verwenden, um Ihre vorherige Änderung rückgängig zu machen. Wenn Sie beispielsweise eine versehentliche Bearbeitung vorgenommen haben, können Sie diese in den vorherigen korrekten Zustand zurücksetzen, oder wenn Sie versehentlich eine Zelle gelöscht haben, können Sie sie wiederherstellen.

Zwischen Code und Markdown wechseln

Der Notebook-Editor ermöglicht es Ihnen, Codezellen einfach zwischen Markdown und Code zu wechseln. Wenn Sie den Sprach-Picker unten rechts in einer Zelle auswählen, können Sie zwischen Markdown und, falls zutreffend, jeder anderen vom ausgewählten Kernel unterstützten Sprache wechseln.

Change language

Sie können auch die Tastatur verwenden, um den Zelltyp zu ändern. Wenn eine Zelle ausgewählt und im Befehlsmodus ist, schaltet die Taste M den Zelltyp auf Markdown und die Taste Y auf Code um.

Sobald Markdown eingestellt ist, können Sie Markdown-formatierten Inhalt in die Codezelle eingeben.

Raw Markdown displayed in code cell

Um Markdown-Zellen zu rendern, können Sie das Häkchen in der Zellsymbolleiste auswählen oder die Tastenkombinationen Strg+Enter und Umschalt+Enter verwenden.

How to render Markdown

Rendered Markdown displayed in code cell

Ausgabe löschen oder Kernel neu starten/unterbrechen

Wenn Sie alle Ausgaben von Codezellen löschen oder den Kernel neu starten/unterbrechen möchten, können Sie dies über die Hauptsymbolleiste des Notebook-Editors tun.

Notebook Toolbar

Zeilennummern aktivieren/deaktivieren

Wenn Sie sich im Befehlsmodus befinden, können Sie die Zeilennummerierung in einer einzelnen Codezelle aktivieren oder deaktivieren, indem Sie die Taste L verwenden.

Line numbers enabled in code cell

Um die Zeilennummerierung für das gesamte Notebook umzuschalten, verwenden Sie Umschalt+L im Befehlsmodus auf einer beliebigen Zelle.

Line numbers enabled for notebook

Inhaltsverzeichnis

Um durch Ihr Notebook zu navigieren, öffnen Sie den Datei-Explorer in der Aktivitätsleiste. Öffnen Sie dann den Tab Gliederung in der Seitenleiste.

Table of contents

Sie können das Filtersteuerelement in der Gliederungsansicht verwenden, um Markdown-Überschriften, Codezellen und Codezellensymbole einzuschließen. Die Filter entsprechen den folgenden Einstellungen

  • notebook.outline.showMarkdownHeadersOnly
  • notebook.outline.showCodeCells
  • notebook.outline.showCodeCellSymbols

Hinweis: Standardmäßig zeigt die Gliederung nur Markdown an. Um Codezellen anzuzeigen, aktivieren Sie die folgende Einstellung: Notebook > Gliederung: Codezellen anzeigen.

IntelliSense-Unterstützung im Jupyter Notebook-Editor

Das Python Jupyter Notebook-Editor-Fenster bietet vollständige IntelliSense-Funktionen – Codevervollständigung, Mitgliedlisten, Schnellinformationen zu Methoden und Parameterhinweise. Sie können im Notebook-Editor-Fenster genauso produktiv sein wie im Code-Editor.

IntelliSense support

Variablen-Explorer und Daten-Viewer

Innerhalb eines Python-Notebooks ist es möglich, die Variablen Ihrer aktuellen Jupyter-Sitzung anzuzeigen, zu inspizieren, zu sortieren und zu filtern. Durch Auswahl des Symbols Variablen in der Hauptsymbolleiste nach dem Ausführen von Code und Zellen sehen Sie eine Liste der aktuellen Variablen, die sich automatisch aktualisiert, wenn Variablen im Code verwendet werden. Der Variablenbereich wird am unteren Rand des Notebooks geöffnet.

Variable Explorer

Variable Explorer

Daten-Viewer

Für zusätzliche Informationen zu Ihren Variablen können Sie auch eine Zeile doppelklicken oder die Schaltfläche Variable im Daten-Viewer anzeigen neben der Variable für eine detailliertere Ansicht einer Variable im Daten-Viewer verwenden.

Data Viewer

Alternativ können Sie die Datenanzeigeerfahrung anderer Erweiterungen wie Data Wrangler nutzen. Die Data Wrangler-Erweiterung bietet eine reichhaltige Benutzeroberfläche, um Einblicke in Ihre Daten zu geben und Ihnen bei der Datenprofilierung, Qualitätsprüfung, Transformationen und mehr zu helfen. Erfahren Sie mehr über die Data Wrangler-Erweiterung in unserer Dokumentation.

Zeilen filtern

Das Filtern von Zeilen im Daten-Viewer kann durch Eingabe in das Textfeld am oberen Rand jeder Spalte erfolgen. Geben Sie eine Zeichenfolge ein, nach der Sie suchen möchten, und jede Zeile, die diese Zeichenfolge in der Spalte enthält, wird gefunden.

Data Viewer

Wenn Sie eine exakte Übereinstimmung finden möchten, stellen Sie Ihrem Filter ein '=' voran.

Data Viewer

Komplexere Filterungen können durch Eingabe eines regulären Ausdrucks erfolgen.

Data Viewer

Speichern von Plots

Um einen Plot aus Ihrem Notebook zu speichern, fahren Sie einfach mit der Maus über die Ausgabe und wählen Sie das Symbol Speichern oben rechts aus.

Save output

Hinweis: Es gibt Unterstützung für das Rendern von Plots, die mit matplotlib und Altair erstellt wurden.

Benutzerdefiniertes Notebook-Diffing

Unter der Haube sind Jupyter Notebooks JSON-Dateien. Die Segmente in einer JSON-Datei werden als Zellen gerendert, die aus drei Komponenten bestehen: Eingabe, Ausgabe und Metadaten. Der Vergleich von Änderungen in einem Notebook mit zeilenbasiertem Diffing ist schwierig und schwer zu analysieren. Der Rich-Diffing-Editor für Notebooks ermöglicht es Ihnen, Änderungen für jede Komponente einer Zelle leicht zu sehen.

Sie können sogar anpassen, welche Arten von Änderungen in Ihrer Diffing-Ansicht angezeigt werden sollen. Wählen Sie oben rechts das Überlaufmenü in der Symbolleiste aus, um anzupassen, welche Zellenkomponenten Sie einschließen möchten. Eingabedifferenzen werden immer angezeigt.

Custom notebook diffing

Um mehr über die Git-Integration in VS Code zu erfahren, besuchen Sie Source Control in VS Code.

Debuggen eines Jupyter Notebooks

Es gibt zwei verschiedene Möglichkeiten, ein Jupyter Notebook zu debuggen: einen einfacheren Modus namens "Zeile für Zeile ausführen" und den vollständigen Debugging-Modus.

Hinweis: Beide Funktionen erfordern ipykernel 6+. Siehe diese Wiki-Seite für Details zur Installation oder Aktualisierung von ipykernel.

Zeile für Zeile ausführen

Zeile für Zeile ausführen ermöglicht es Ihnen, eine Zelle Zeile für Zeile auszuführen, ohne von anderen VS Code-Debugging-Funktionen abgelenkt zu werden. Wählen Sie zum Starten die Schaltfläche Zeile für Zeile ausführen in der Zellsymbolleiste.

Run by line button

Verwenden Sie dieselbe Schaltfläche, um mit einer Anweisung fortzufahren. Sie können die Schaltfläche Stopp der Zelle auswählen, um frühzeitig zu beenden, oder die Schaltfläche Fortsetzen in der Symbolleiste, um bis zum Ende der Zelle weiter auszuführen.

Zelle debuggen

Wenn Sie den vollen Umfang der in VS Code unterstützten Debugging-Funktionen, wie z. B. Breakpoints und die Möglichkeit, in andere Zellen und Module hineinzuspringen, nutzen möchten, können Sie den vollständigen VS Code-Debugger verwenden.

  1. Beginnen Sie mit dem Setzen der erforderlichen Breakpoints, indem Sie in den linken Rand einer Notebook-Zelle klicken.
  2. Wählen Sie dann die Schaltfläche Zelle debuggen im Menü neben der Schaltfläche Ausführen. Dies führt die Zelle in einer Debug-Sitzung aus und hält bei Ihren Breakpoints in jedem Code an, der ausgeführt wird, auch wenn er sich in einer anderen Zelle oder einer .py-Datei befindet.
  3. Sie können die Debug-Ansicht, die Debug-Konsole und alle Schaltflächen in der Debug-Symbolleiste wie gewohnt in VS Code verwenden.

Beachten Sie, dass das Debuggen von Zellen in einem Jupyter Notebook keine der Debugging-Konfigurationen in launch.json verwendet. Es kann stattdessen über Einstellungen wie jupyter.debugJustMyCode angepasst werden.

Debug cell button

Durch Notebook suchen

Sie können in einem Notebook (oder Teilen davon durch Filtern der Suchoptionen) suchen, indem Sie die Tastenkombination Strg/Cmd + F verwenden. Klicken Sie auf die Option Filtern (Trichter-Symbol), um zu durchsuchen

  • Markdown-Zelleneingabe (Markdown-Quelle)
  • Markdown-Zellenausgabe (Gerendertes Markdown)
  • Codezelleneingabe (Codezellenquelle)
  • Codezellenausgabe (Zellenausgabe)

Notebook-Suchen filtern standardmäßig nur Zelleneingaben.

Search options

Verbindung zu einem Remotedienst für Jupyter-Server herstellen

Sie können rechenintensive Aufgaben in einem Jupyter Notebook auf andere Computer auslagern, indem Sie eine Verbindung zu einem Remote-Jupyter-Server herstellen. Nach der Verbindung werden Codezellen auf dem Remote-Server anstelle des lokalen Computers ausgeführt.

So verbinden Sie sich mit einem Remote-Jupyter-Server

  1. Öffnen Sie die Kernel-Picker-Schaltfläche oben rechts im Notebook (oder führen Sie den Befehl Notebook: Notebook-Kernel auswählen aus der Befehlspalette aus).

    Notebook kernel picker

  2. Wählen Sie die Option Vorhandener Jupyter-Server, um eine Verbindung zu einem vorhandenen Jupyter-Server herzustellen.

    Select existing Jupyter server

  3. Um zum ersten Mal eine Verbindung zu einem vorhandenen Server herzustellen, wählen Sie Geben Sie die URL des laufenden Jupyter-Servers ein.

    Choose to connect to an existing server

  4. Wenn Sie zur Eingabe der URL des laufenden Jupyter-Servers aufgefordert werden, geben Sie die URI (Hostname) des Servers mit dem Authentifizierungstoken an, das mit einem ?token= URL-Parameter enthalten ist. (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 Passwort angeben.

    Prompt to supply a Jupyter server URI

Hinweis: Zur erhöhten 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 Remote-Server verschlüsselt werden. Anleitungen zur Sicherung eines Notebook-Servers finden Sie in der Jupyter-Dokumentation.

Datenwissenschaftliches Profilvorlage

Profile ermöglichen es Ihnen, Ihre Erweiterungen, Einstellungen und UI-Layouts schnell zu wechseln, je nach Ihrem aktuellen Projekt oder Ihrer Aufgabe. Um Ihnen den Einstieg in Jupyter Notebooks zu erleichtern, können Sie die Datenwissenschaftliche Profilvorlage verwenden, ein kuratiertes Profil mit nützlichen Erweiterungen, Einstellungen und Snippets. Sie können eine Profilvorlage so verwenden, wie sie ist, oder sie als Ausgangspunkt für weitere Anpassungen für Ihre eigenen Arbeitsabläufe verwenden.

Sie wählen eine Profilvorlage über das Dropdown-Menü Profile > Profil erstellen... aus.

Create Profile dropdown with profile templates

Sobald Sie eine Profilvorlage ausgewählt haben, können Sie die Einstellungen und Erweiterungen überprüfen und einzelne Elemente entfernen, wenn Sie sie nicht in Ihr neues Profil aufnehmen möchten. Nach dem Erstellen des neuen Profils basierend auf der Vorlage werden Änderungen an Einstellungen, Erweiterungen oder der Benutzeroberfläche in Ihrem Profil gespeichert.

© . This site is unofficial and not affiliated with Microsoft.