Jupyter Notebook je webová aplikace umožňující vytvářet interaktivní dokumenty, ve kterých je možné spouštět Python kód. Navíc umožňuje vykreslování grafů, tabulek nebo obrázků. Je to tedy výborný nástroj nejen pro vývojáře, ale také pro lektory nebo výzkumníky.
Představte si například, že provádíte analýzu výsledků ze zátěžového testování. Pomocí Notebooku si vytvoříte dokument, ve kterém popíšete, jak probíhalo testování a sběr dat. K tomu připojíte spustitelný kód, ve kterém provedete analýzu naměřených dat a vykreslíte graf zobrazující zatížení systému. Následně přidáte popis výsledků nebo vysvětlení grafu. Nakonec dokument můžete vyexportovat jako PDF nebo HTML a rozeslat kolegům.
Instalace a spuštění
Instalace pomocí balíčkovacího systému PIP je jednouchá, stačí spustit příkaz:
pip install notebook
Aplikaci spustíme příkazem jupyter notebook
, přičemž můžeme definovat různé parametry, jako například složku, ve které chceme s notebooky pracovat:
jupyter notebook --notebook-dir="./notebooks-folder"
Vytváříme dokument
Po spuštění aplikace vytvoříme nový dokument klasickou cestou pomocí menu File > New > Notebook.
V dokumentu můžeme vytvářet bloky s různou funkcí. Můžeme vyzkoušet přidání spustitelného Python kódu a ověřit, že vše funguje, jak má:
Pokud chceme přidat nějaký komentář, přidáme blok typu Markdown:
Příklady
Na našem GitHubu najdete několik ukázek použití. Je zde například návod, jak otevřít textový soubor, zobrazit obrázek nebo vytvořit koláčový a čárový graf.
Návod na přečtení obsahu textového souboru
Obrázek
Koláčový graf
Graf
Rozšíření
Aplikaci Jupyter Notebook je možné také vylepšit různými rozšířeními. Mezi moje oblíbené patří ipython-autotime
. Toto rozšíření vám po spuštění kódu zobrazí dobu jeho běhu a také čas spuštění. Díky tomu máme přehled o tom, jak dlouho trvalo provedení operace a také, kdyby byla spuštěna – to je velmi výhodné v případě, kdy například potřebujeme naše kroky spojit s logy systému nebo aplikace, se kterou pracujeme.
Rozšíření nainstalujeme pomocí příkazu pip install ipython-autotime
. V prvním bloku notebooku potom aktivujeme pomocí příkazu %load_ext autotime
(viz autotime_example.ipynb).
Použití
Jupyter Notebook není přímo nástroj na testování, ale hodí se například pro analýzu a prezentaci různých dat, jako jsou výsledky testů nebo logů. Můžete jej napojit na databázi a vytvářet pohledy a grafy například pro reporty. Velkým pomocníkem je také při vytváření návodů nebo různých experimentů, kdy můžete popsat jednotlivé kroky a zároveň spouštět kód a vyhodnocovat jeho výstup.