Jupyter Notebook Cheatsheet

Essentiële snelkoppelingen en magische opdrachten

Inhoud

Start de Jupyter Notebook productiviteit op met essentiële sneltoetsen, magische commando’s en workflow-tips die uw data science- en ontwikkelingservaring kunnen transformeren.

jupyter notebook ui

Jupyter Notebook is geworden tot de standaard voor interactieve berekening, data-analyse en machine learning workflows. Of u nu werkt met Python voor data science, experimenteert met AI-modellen of code prototypes, het beheersen van Jupyter’s toetsenbord-sneltoetsen en magische commando’s kan uw productiviteit aanzienlijk verhogen.

Deze sneltoetsenlijst behandelt de meest essentiële commando’s en sneltoetsen die elke Jupyter-gebruiker moet kennen, van basiscel navigatie tot geavanceerde magische commando’s die uw workflow streamlijnen. Als u nieuw bent in Python-ontwikkeling, zou u mogelijk ook onze Python Sneltoetsenlijst nuttig vinden voor het begrijpen van Python-taalconstructies die naadloos werken binnen Jupyter-cellen.

Het begrijpen van Command Mode versus Edit Mode

Jupyter Notebook werkt in twee verschillende modi die bepalen welke toetsenbord-sneltoetsen beschikbaar zijn:

  • Command Mode (geactiveerd door Esc te drukken): beheert cel-niveau operaties zoals het maken, verwijderen en converteren van cellen
  • Edit Mode (geactiveerd door Enter te drukken): stelt u in staat om de inhoud binnen een cel te bewerken

De belangrijkste sneltoets om te onthouden is het drukken op H in command mode, wat het volledige toetsenbord-sneltoetsen helpdialog weergeeft. Dit is uw snelle verwijzing wanneer u een specifieke sneltoets vergeet.

Essentiële Command Mode Sneltoetsen

Cel Navigatie en Uitvoering

Het kernwerk in Jupyter draait om het efficiënt uitvoeren van cellen:

  • Shift + Enter: Voer de huidige cel uit en selecteer automatisch de cel hieronder. Dit is de meest gebruikte sneltoets voor het uitvoeren van code op volgorde.
  • Ctrl + Enter: Voer de huidige cel uit zonder naar de volgende te gaan. Ideaal wanneer u een cel meerdere keren opnieuw wilt uitvoeren.
  • Alt + Enter: Voer de huidige cel uit en voeg een nieuwe cel hieronder toe. Ideaal voor iteratieve ontwikkeling waarbij u vaak nieuwe cellen moet toevoegen.

Celbeheer

Efficiënt beheren van uw notebookstructuur is cruciaal voor het behouden van nette, georganiseerde notebooks:

  • A: Voeg een nieuwe cel toe boven de huidige cel
  • B: Voeg een nieuwe cel toe onder de huidige cel
  • D, D (druk D tweemaal): Verwijder de huidige cel. Wees voorzichtig met deze sneltoets!
  • Z: Onherroepen de laatste celverwijdering. Een redding als u per ongeluk belangrijke cellen verwijdert.
  • Shift + M: Samenvoegen van geselecteerde cellen. Selecteer meerdere cellen met Shift + J of Shift + K om te navigeren, en voeg ze vervolgens samen.

Celtype Conversie

Snelle overstap tussen celtypen is essentieel voor het maken van goed gedocumenteerde notebooks:

  • Y: Converteer de cel naar Code
  • M: Converteer de cel naar Markdown
  • R: Converteer de cel naar Raw (niet uitgevoerd, handig voor aantekeningen)
  • 1 tot 6: Converteer de cel naar koppeniveau 1 tot 6 voor gestructureerde documentatie

Kernelbewerkingen

Bij het werken met lange berekeningen of foutopsporing is kernbeheer essentieel:

  • I, I (druk I tweemaal): onderbreek de kernel. Belangrijk wanneer u een onbeheersbare berekening moet stoppen.
  • 0, 0 (druk 0 tweemaal): herstart de kernel. Gebruik dit wanneer u alle variabelen moet wissen en opnieuw moet beginnen.

Weergave en Navigatie

  • L: Schakel lijnnrnummers in de huidige cel in/uit. Nuttig voor foutopsporing en het verwijzen naar specifieke lijnen.
  • O: Schakel de celuitvoer in/uit. Verberg uitvoer om uw notebook schoon te houden bij het presenteren.
  • H: Toon het toetsenbord-sneltoetsen helpdialog

Essentiële Edit Mode Sneltoetsen

Wanneer u code bewerkt binnen een cel, spiegelen deze sneltoetsen de functies van standaard teksteditors:

Tekstbewerking

  • Tab: Codevoltooiing of inspringen. Jupyter’s automatisch voltooien is krachtig en contextbewust.
  • Shift + Tab: Toon tooltip/documentatie voor het object onder de cursor. Dit is uitzonderlijk handig voor het verkennen van API’s zonder het notebook te verlaten.
  • Ctrl + ]: Inspringen van geselecteerde lijnen
  • Ctrl + [: Uitspringen van geselecteerde lijnen
  • Ctrl + /: Schakel op- en uitkommentaar van geselecteerde lijnen. Essentieel voor het snel uitcommentariëren van code tijdens foutopsporing.
  • Ctrl + A: Selecteer alle tekst in de cel
  • Ctrl + Z: Ongedaan maken
  • Ctrl + Shift + Z of Ctrl + Y: Opnieuw doen
  • Ctrl + Home: Ga naar het begin van de cel
  • Ctrl + End: Ga naar het einde van de cel
  • Ctrl + Links: Beweeg de cursor één woord naar links
  • Ctrl + Rechts: Beweeg de cursor één woord naar rechts

Moduswisseling

  • Esc: Wissel naar Command Mode (uit Edit Mode)

Magische commando’s: Voeg uw workflow aan

Magische commando’s zijn speciale richtlijnen die de functionaliteit van Jupyter uitbreiden. Ze komen in twee vormen voor: regel magie (voorafgegaan door %) die werken op één regel, en cel magie (voorafgegaan door %%) die werken op de hele cel.

Prestatieprofiel

Het begrijpen van codeprestaties is cruciaal voor optimalisatie. Jupyter biedt ingebouwde timing-commands:

# Tijd een enkele uitvoering
%time sum(range(1000000))

# Tijd meerdere uitvoeringen met gemiddelde (meer nauwkeurig)
%timeit sum(range(1000000))

# Tijd een gehele cel
%%time
total = 0
for i in range(1000000):
    total += i

Het %timeit commando is vooral waardevol omdat het de code meerdere keren uitvoert en statistische informatie over de uitvoeringstijd biedt, waardoor het ideaal is voor het testen van verschillende aanpakken voor hetzelfde probleem.

Uitvoeren van externe scripts

Het %run magische commando laat u externe Pythonscripts uitvoeren binnen uw notebook, waardoor het gemakkelijk is om code modulair te maken:

%run my_script.py

Dit is vooral handig bij het werken aan grotere projecten waarbij u herbruikbare functies in aparte bestanden wilt houden. Als u Pythonomgevingen beheert, gebruikt u mogelijk tools zoals uv of venv voor omgevingsbeheer, en %run werkt naadloos met deze opstellingen.

Pakketbeheer

U kunt Python-pakketten direct vanuit uw notebook installeren en beheren:

!pip install numpy pandas matplotlib
!conda install scipy

Dit elimineert het behoeftigheid om tussen terminal en notebook te wisselen, wat uw ontwikkelingswerkstroom streamlijnt. Het ! voorvoegsel voert shellcommando’s uit, wat we hieronder verder zullen bespreken.

Visualisatie

Voor datavisualisatie met matplotlib, gebruik:

%matplotlib inline

Dit zorgt ervoor dat grafieken direct worden weergegeven binnen de notebookcellen, wat een vloeiende visualisatieervaring biedt. U kunt ook %matplotlib widget gebruiken voor interactieve grafieken in JupyterLab.

Bestandsbewerkingen

Het %%writefile cel-magische commando schrijft de inhoud van de cel naar een bestand:

%%writefile example.py
def hello_world():
    print("Hello, World!")
    return True

Dit is handig voor het genereren van scripts of het opslaan van codefragmenten direct vanuit uw notebook. Omgekeerd kunt u bestanden lezen met standaard Python-bestandsbewerkingen of shellcommando’s.

Shellcommando’s

Voer shellcommando’s rechtstreeks uit vanuit notebookcellen:

# Enkelregel shellcommando
!ls -l
!pwd
!git status

# Meervoudige regel shellcommando's
%%bash
echo "Hello from Bash"
ls -l
find . -name "*.py" | head -10

Deze integratie is krachtig voor bestandsbeheer, versiebeheer en systeadministratie taken zonder het notebookomgeving te verlaten.

Beschikbare magische commando’s verkennen

Om alle beschikbare magische commando’s te ontdekken:

# Lijst alle magische commando's
%lsmagic

# Krijg hulp bij een specifiek magisch commando
%timeit?
%matplotlib?

Het ? teken na een magisch commando toont zijn documentatie, parameters en gebruikvoorbeelden. Dit is een uitstekende manier om interactief de mogelijkheden van Jupyter te verkennen.

Geavanceerde tips en beste praktijken

Uw notebook organiseren

  1. Gebruik Markdown-cellen vrijblijvend: goed gedocumenteerde notebooks zijn makkelijker te begrijpen en onderhouden. Gebruik koppeniveau’s (1-6) om een duidelijke structuur te creëren.

  2. Houd cellen gefocust: elke cel moet een enkele, duidelijke doel hebben. Dit maakt het foutopsporen gemakkelijker en verbetert de leesbaarheid.

  3. Gebruik uitvoernummers van cellen: de uitvoernummers (In [1], In [2], etc.) helpen u bij het volgen van de uitvoeringsvolgorde, wat cruciaal is wanneer cellen buiten volgorde worden uitgevoerd.

Werken met grote notebooks

Wanneer notebooks groeien, helpen deze technieken bij het behouden van de orde:

  • Gebruik de inhoudsopgave-extensie (indien beschikbaar) voor navigatie
  • Splits gerelateerde secties in afzonderlijke notebooks
  • Gebruik %%writefile om herbruikbare code in Pythonmodules te extraheren
  • Herstart regelmatig de kernel en voer alle cellen uit om de herhaalbaarheid te garanderen

Integratie met andere tools

Jupyter Notebooks werken uitstekend met moderne Python tooling. Als u werkt met LLMs en heeft gestructureerde uitvoer nodig, kunt u notebooks integreren met tools zoals Ollama voor gestructureerde LLM-uitvoer. Voor web scraping en dataverwerking zou u mogelijk bibliotheken gebruiken die HTML naar Markdown converteren, vergelijkbaar met wat we behandelden in onze HTML naar Markdown conversiegids.

Foutopsporing werkstroom

  1. Gebruik %debug magie na een uitzondering om de debugger in te schakelen
  2. Gebruik %pdb on om automatisch de debugger in te schakelen bij uitzonderingen
  3. Afdrukken en %timeit helpen bij het identificeren van prestatieproblemen
  4. Herstart kernel (0, 0) wanneer variabelen in onverwachte toestanden geraken

Aanpassingen

U kunt toetsenbord-sneltoetsen aanpassen door naar HelpKeyboard Shortcuts in het Jupyter Notebook menu te gaan. Dit stelt u in staat om het omgeving aan uw specifieke werkstroomvoorkeuren aan te passen.

Conclusie

Het beheersen van Jupyter Notebook-sneltoetsen en magische commando’s verandert het van een eenvoudige codeeditor in een krachtige interactieve berekeningsomgeving. Begin met het onthouden van de meest gebruikte sneltoetsen (Shift+Enter, Esc, A, B, D+D, M, Y), en voeg geleidelijk magische commando’s toe aan uw werkstroom. De tijd die u investeert in het leren van deze commando’s levert dividend op in productiviteit en werkstroomefficiëntie.

Herinner u: druk op H in command mode wanneer u de volledige sneltoetsenreferentie wilt zien, en gebruik %lsmagic om alle beschikbare magische commando’s te verkennen. Gelukkig coderen!

Externe Referenties