Karta cheat Jupyter Notebook

Podstawowe skróty i magiczne polecenia

Page content

Wzmacniaj produktwność Jupyter Notebook dzięki kluczowym skrótom, magicznym komendom i wskazówkom dotyczącym pracy, które przekształcą doświadczenie w zakresie nauki o danych i rozwoju oprogramowania.

interfejs Jupyter Notebook

Jupyter Notebook stał się standardem w zakresie interaktywnego obliczania, analizy danych i przepływów pracy w uczeniu maszynowym. Niezależnie od tego, czy pracujesz z Pythonem w zakresie nauki o danych, eksperymentujesz z modelami AI, czy prototypujesz kod, opanowanie skrótów klawiaturowych i magicznych komend Jupyter może znacząco zwiększyć Twoją wydajność.

Ten arkusz zawiera najważniejsze komendy i skróty, które każdy użytkownik Jupyter powinien znać, od podstawowego nawigowania po komórki po zaawansowane magiczne komendy, które ułatwią przepływ pracy. Jeśli jesteś nowy w rozwoju w języku Python, możesz także znaleźć pomocny nasz arkusz Pythona w zrozumieniu konstrukcji językowych, które działają płynnie w komórkach Jupyter.

Zrozumienie trybu komend vs trybu edycji

Jupyter Notebook działa w dwóch różnych trybach, które określają, które skróty klawiaturowe są dostępne:

  • Tryb komend (aktywowany przez naciśnięcie Esc): kontroluje operacje na poziomie komórki, takie jak tworzenie, usuwanie i konwertowanie komórek
  • Tryb edycji (aktywowany przez naciśnięcie Enter): umożliwia edycję zawartości w komórce

Najważniejszy skrót do zapamiętania to naciśnięcie H w trybie komend, które wyświetla kompletny dialog pomocy dotyczący skrótów klawiaturowych. Jest to szybki odnośnik, gdy zapomnisz konkretnego skrótu.

Kluczowe skróty trybu komend

Nawigacja i wykonanie komórek

Wydajność w Jupyter opiera się na efektywnym uruchamianiu komórek:

  • Shift + Enter: Uruchamia aktualną komórkę i automatycznie wybiera komórkę poniżej. To najczęściej używany skrót do sekwencyjnego wykonywania kodu.
  • Ctrl + Enter: Uruchamia aktualną komórkę bez przechodzenia do następnej. Idealne, gdy chcesz wielokrotnie ponownie uruchomić komórkę.
  • Alt + Enter: Uruchamia aktualną komórkę i wstawia nową komórkę poniżej. Idealne do iteracyjnego rozwoju, kiedy często potrzebujesz dodawać nowe komórki.

Zarządzanie komórkami

Efektywne zarządzanie strukturą notebooka jest kluczowe do utrzymania czystych i dobrze zorganizowanych notebooków:

  • A: Wstaw nową komórkę powyżej aktualnej komórki
  • B: Wstaw nową komórkę poniżej aktualnej komórki
  • D, D (naciśnij D dwukrotnie): Usuń aktualną komórkę. Uważaj przy użyciu tej komendy!
  • Z: Cofnij ostatnie usunięcie komórki. Zbawca, gdy przypadkowo usuwasz ważne komórki.
  • Shift + M: Połącz wybrane komórki. Wybierz wiele komórek za pomocą Shift + J lub Shift + K, aby nawigować, a następnie połącz je.

Konwersja typów komórek

Szybkie przełączanie się między typami komórek jest kluczowe do tworzenia dobrze udokumentowanych notebooków:

  • Y: Konwertuj komórkę na Kod
  • M: Konwertuj komórkę na Markdown
  • R: Konwertuj komórkę na Surowy (nie wykonywany, użyteczny do notatek)
  • 1 do 6: Konwertuj komórkę na poziomy nagłówków 1 do 6 dla strukturalnej dokumentacji

Operacje jądra

Gdy pracujesz z długimi obliczeniami lub debugowaniem, kontrola jądra jest kluczowa:

  • I, I (naciśnij I dwukrotnie): Przerwij jądro. Krytyczne, gdy musisz zatrzymać obliczenie, które się zawiesiło.
  • 0, 0 (naciśnij 0 dwukrotnie): Uruchom ponownie jądro. Użyj tego, gdy chcesz wyczyścić wszystkie zmienne i rozpocząć od nowa.

Wyświetlanie i nawigacja

  • L: Przełącz liczby wierszy w aktualnej komórce. Przydatne do debugowania i odnoszenia się do konkretnych linii.
  • O: Przełącz wyświetlanie wyników komórki. Ukryj wynik, aby zachować czystość notebooka podczas prezentacji.
  • H: Wyświetl dialog pomocy dotyczący skrótów klawiaturowych

Kluczowe skróty trybu edycji

Gdy edytujesz kod w komórce, te skróty imitują funkcjonalność typowego edytora tekstu:

Edycja tekstu

  • Tab: Autouzupełnianie kodu lub wcięcie. Autouzupełnianie Jupyter jest potężne i kontekstowe.
  • Shift + Tab: Wyświetl podpowiedź/dokumentację dla obiektu pod kursorzem. Bardzo przydatne do eksplorowania API bez opuszczenia notebooka.
  • Ctrl + ]: Wcięcie zaznaczonych linii
  • Ctrl + [: Odsunięcie zaznaczonych linii
  • Ctrl + /: Przełącz komentarz na zaznaczonych liniach. Kluczowe do szybkiego komentowania kodu podczas debugowania.

Nawigacja

  • Ctrl + A: Zaznacz cały tekst w komórce
  • Ctrl + Z: Cofnij
  • Ctrl + Shift + Z lub Ctrl + Y: Przywróć
  • Ctrl + Home: Przejdź do początku komórki
  • Ctrl + End: Przejdź do końca komórki
  • Ctrl + Left: Przesuń kursor o jedno słowo w lewo
  • Ctrl + Right: Przesuń kursor o jedno słowo w prawo

Przełączanie trybów

  • Esc: Przejdź do trybu komend (z trybu edycji)

Magiczne komendy: Przyspiesz swoje przepływy pracy

Magiczne komendy to specjalne dyrektywy, które rozszerzają funkcjonalność Jupyter. Przypadają one na dwa rodzaje: magiczne komendy wierszowe (prefiksowane znakiem %), które działają na pojedynczy wiersz, i magiczne komendy komórkowe (prefiksowane znakiem %%), które działają na całą komórkę.

Profilowanie wydajności

Zrozumienie wydajności kodu jest kluczowe do optymalizacji. Jupyter oferuje wbudowane komendy pomiaru czasu:

# Pomiar pojedynczego wykonania
%time sum(range(1000000))

# Pomiar wielu wykonania z średnimi (bardziej dokładne)
%timeit sum(range(1000000))

# Pomiar całej komórki
%%time
total = 0
for i in range(1000000):
    total += i

Komenda %timeit jest szczególnie wartościowa, ponieważ uruchamia kod wielokrotnie i dostarcza statystycznych informacji o czasie wykonania, co czyni ją idealną do porównywania różnych podejść do tego samego problemu.

Uruchamianie zewnętrznych skryptów

Magiczna komenda %run umożliwia wykonywanie zewnętrznych skryptów Pythona w ramach notebooka, co ułatwia modularizację kodu:

%run my_script.py

To szczególnie przydatne, gdy pracujesz nad większymi projektami, gdzie chcesz przechowywać ponownie wykorzystywane funkcje w oddzielnych plikach. Jeśli zarządzasz środowiskami Pythona, możesz korzystać z narzędzi takich jak uv lub venv do zarządzania środowiskami, a %run działa płynnie z tymi konfiguracjami.

Zarządzanie pakietami

Możesz instalować i zarządzać pakietami Pythona bezpośrednio z notebooka:

!pip install numpy pandas matplotlib
!conda install scipy

To eliminuje konieczność przełączania się między terminalami a notebookami, co przyspiesza przepływ pracy rozwojowy. Prefiks ! wykonuje polecenia powłoki, które omówimy poniżej.

Wizualizacja

Dla wizualizacji danych z biblioteką matplotlib, użyj:

%matplotlib inline

To zapewnia, że wykresy są renderowane bezpośrednio w komórkach notebooka, zapewniając płynne doświadczenie wizualizacyjne. Można również użyć %matplotlib widget do interaktywnych wykresów w JupyterLab.

Operacje plików

Magiczna komenda %%writefile zapisuje zawartość komórki do pliku:

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

To przydatne do generowania skryptów lub zapisywania fragmentów kodu bezpośrednio z notebooka. Odwrotnie, można czytać pliki za pomocą standardowych operacji plików Pythona lub poleceń powłoki.

Polecenia powłoki

Wykonuj polecenia powłoki bezpośrednio z komórek notebooka:

# Jednoliniowe polecenie powłoki
!ls -l
!pwd
!git status

# Wieloliniowe polecenia powłoki
%%bash
echo "Hello from Bash"
ls -l
find . -name "*.py" | head -10

Ta integracja jest potężna do zarządzania plikami, operacji kontroli wersji i zadań administracyjnych systemu bez opuszczania środowiska notebooka.

Eksploracja dostępnych magicznych komend

Aby odkryć wszystkie dostępne magiczne komendy:

# Lista wszystkich magicznych komend
%lsmagic

# Pobierz pomoc dotyczącą konkretnej magicznej komendy
%timeit?
%matplotlib?

Operator ? po dowolnej magicznej komendzie wyświetla jej dokumentację, parametry i przykłady użycia. To świetny sposób na eksplorację możliwości Jupytera interaktywnie.

Zaawansowane wskazówki i najlepsze praktyki

Organizacja notebooka

  1. Używaj komórek Markdown szeroko: dobrze udokumentowane notebooki są łatwiejsze do zrozumienia i utrzymania. Używaj poziomów nagłówków (1-6), aby stworzyć wyraźną strukturę.
  2. Utrzymuj skupienie komórek: każda komórka powinna mieć jedno, wyraźne zadanie. To ułatwia debugowanie i poprawia czytelność.
  3. Używaj numerów wykonania komórek: numerki wykonania (In [1], In [2] itd.) pomagają śledzić kolejność wykonania, co jest kluczowe, gdy komórki mogą być uruchamiane poza kolejnością.

Praca z dużymi notebookami

Gdy notebooki stają się duże, te techniki pomagają utrzymać organizację:

  • Używaj rozszerzenia spisu treści (jeśli jest dostępne) do nawigacji
  • Podziel powiązane sekcje na osobne notebooki
  • Używaj %%writefile, aby wyodrębnić ponownie wykorzystywany kod do modułów Pythona
  • Regularnie uruchamiaj ponownie jądro i wszystkie komórki, aby zapewnić powtarzalność

Integracja z innymi narzędziami

Jupyter Notebooky współpracują doskonale z nowoczesnymi narzędziami Pythona. Jeśli pracujesz z LLM i potrzebujesz strukturalnego wyjścia, możesz połączyć notebooky z narzędziami takimi jak Ollama dla strukturalnego wyjścia LLM. Dla skrapowania i przetwarzania danych, możesz korzystać z bibliotek, które konwertują HTML na Markdown, podobnie jak to omówiliśmy w naszej przewodniku konwersji HTML na Markdown.

Przepływ pracy debugowania

  1. Użyj magicznej komendy %debug po wyjątku, aby wejść do debuggera
  2. Użyj %pdb on, aby automatycznie wejść do debuggera przy wyjątkach
  3. Wyświetlanie instrukcji i %timeit pomagają identyfikować wąskie gardła wydajności
  4. Uruchom ponownie jądro (0, 0), gdy zmienne trafiają w nieoczekiwane stany

Personalizacja

Możesz dostosować skróty klawiaturowe, przechodząc do HelpKeyboard Shortcuts w menu Jupyter Notebook. To umożliwia dostosowanie środowiska do preferencji swojego przepływu pracy.

Podsumowanie

Opanowanie skrótów klawiaturowych i magicznych komend Jupyter Notebook przekształca je z prostego edytora kodu w potężne środowisko obliczeń interaktywnych. Zaczynaj od zapamiętania najczęściej używanych skrótów (Shift+Enter, Esc, A, B, D+D, M, Y), a następnie stopniowo włączaj magiczne komendy do swojego przepływu pracy. Inwestycja czasu w naukę tych komend przynosi korzyści w wydajności i efektywności przepływu pracy.

Pamiętaj: w dowolnym momencie w trybie komend naciśnij H, aby zobaczyć pełny odnośnik do skrótów, a %lsmagic do eksplorowania wszystkich dostępnych magicznych komend. Szczęśliwej pracy!

Przydatne linki

Zewnętrzne odniesienia