Jupyter notebook je beležnica, v katero si lahko, kot v vsako beležnico, zapisujemo besedilo, poleg tega pa lahko vanjo pišemo tudi programe, jih kar tam poganjamo, rišemo grafe, vstavljamo slike... Beležnico lahko tudi delimo z drugimi, lahko jo uporabimo celo za objavljanje rezultatov; v obliki takšne beležnice so, recimo, objavili analizo signalov pridobljenih v poskusu, s katerim so zaznali gravitacijske valove, tako da jo lahko vsak preveri in spreminja.
Jupyter bo torej naše osnovno orodje, saj nam bo omogočal, da bo vse, kar počnemo, sproti dokumentirano in shranjeno.
Jupyter poženemo tako, da v ukazni vrstici napišemo jupyter-notebook. Na računalniku se bo zagnal lokalni spletni strežnik, nato pa se bo odprl brskalnik in pokazal "domačo stran" tega strežnika, to je, vsebino direktorija, iz katerega smo pognali jupyter. Zategadelj je jupyter smiselno pognati iz direktorija, v katerem želimo shraniti beležnico. Direktorij zamenjano z ukazo cd
, a o tem se boste več naučili drugič.
Novo beležnico odpremo s pritiskom na "New" (desno zgoraj). Izberimo Python 3. V brskalniku se odpre nov zavihek s prazno beležnico.
Zapisi v Jupytru so razdeljeni v celice. Vsaka celica lahko vsebuje besedilo v obliki Markdown, golo besedilo (Raw) ali programsko kodo (Code).
Privzeti tip celice je programska koda; takšne celice prepoznamo po In [ ]
levo od njih. A s programiranjem se bomo ukvarjali kasneje. Golo besedilo je -- pač besedilo. Besedilo, ki ga pravkar berete, pa je v obliki Markdown.
Tip celice lahko spreminjamo s spustnim menujem, ki se nahaja med ikonami, ki so nad besedilo. Obstajajo tudi hitrejši načini, ki jih bomo spoznali malo kasneje.
Markdown je jezik, ki omogoča preprosto oblikovanje. Z enim, dvema, tremi ali več znaki #
na začetku vrstice povemo, da je vrstica naslov oz. podnaslov oz. podpodnaslov oz. tako naprej. Če del besedila zapremo med zvezdici, *na primer takole*
, se izpiše v poševnem tisku (na primer takole). Za mastni tisk uporabimo **dvojne zvezdice**
. Če vrstice oštevilčimo, dobimo naštevanje,
če jim damo na začetek pomišljaje, pa dobimo alineje
V besedilo lahko vstavljamo tudi povezave: v gornji celici med drugim piše ... objavili [analizo signalov pridobljenih v poskusu](https://losc.ligo.org/s/events/GW150914/GW150914_tutorial.html), s katerim ...
: opis povezave zapremo v oglate oklepaje, povezava pa mora slediti v okroglih.
Tako smo že predelali večino Markdowna. Preostanek najdete na avtorjevi strani
Ko celico zapišemo, jo moramo izvesti. Če gre za celico s programsko kodo, bo Jupyter pognal kodo v njej. Če gre za Markdown, bo oblikoval besedilo. Celico izvedemo tako, da pritisnemo Shift-Enter.
Če jo želimo kasneje spreminjati, jo dvakrat kliknemo.
Nekaterim - sploh pa tistim, ki poznajo jezik LaTeX - bo všeč, da lahko v Jupytru zapisujejo tudi enačbe, bodisi znotraj besedila, $p(x < t) = \int_{-\infty}^t e^\frac{x^2}{2\sigma^2} dx$ bodisi ločeno, $$e^x=\sum_{i=0}^\infty \frac{1}{i!}x^i$$
Enačbo zapremo med znaka $
(znotraj vrstice) ali dvojna znaka $$
. Samo enačbo zapišemo v jeziku LaTeX. Gornje besedilo je zapisano z
Nekaterim - sploh pa tistim, ki poznajo jezik LaTeX - bo všeč, da lahko v Jupytru zapisujejo
tudi enačbe, bodisi znotraj besedila, $p(x < t) = \int_{-\infty}^t e^\frac{x^2}{2\sigma^2} dx$
bodisi ločeno, $$e^x=\sum_{i=0}^\infty \frac{1}{i!}x^i$$
Morda le še en detajl iz Markdowna: vstavljanje slik. Spodnja slika je vstavljena z 
Slika se namreč nahaja v lactuca-sativa.jpg, ki je v poddirektoriju slike
(glede na direktorij, v katerem je shranjena beležnica). Tisti [Solata]
pa je ime slike, ki pa se v resnici (običajno) nikjer ne pokaže.
Jupyter ima dva načina dela: ukazni (command mode) in urejevalni (edit mode). V urejevalnem načinu urejamo vsebino celice. Pritisk na tipki gor ali "dol" premika kurzor po vrsticah besedila v celici (in nato v naslednjo ali prejšnjo celico, ko gremo prek meje trenutne). V ukaznem spreminjamo beležnico; brišemo celice, vstavljamo nove celice... Tipki gor in dol nas tu pomikata prek celic.
V urejevalnem načinu imajo tipke funkcije, kakršnih smo navajeni ob pisanju besedila. Posebnost sta predvsem Shift-Enter, ki, kot že vemo, izvede celico, in Esc, s katerim preklopimo iz urejevalnega načina v ukaznega.
V ukaznem se lahko sprehajamo med celicami. S pritiskom na Enter začnemo urejanje celice (tako kot z že omenjemin dvoklikom), s čimer preklopimo v urejevalni način.
Poleg tega lahko v ukaznem načinu s tipkama A (above) in B (below) dodamo novo celico nad ali pod trenutno, z dvojnim pritiskom na D (delete) pa jo pobrišemo. Z X, V in V izrežemo, kopiramo ali prilepimo trenutno celico. S tipko H (help) prikličemo seznam vseh tipk. :)
Zaporedje, ki se ga splača naučiti, je naslednje. Pogosto se bomo znašli v urejevalnem načinu v celici s kodo; spremeniti jo bomo želeli v Markdown. Pritisniti moramo Esc M Enter
(eno za drugo, ne hkrati); z Esc
preidemo v ukazni način, z M
zamenjamo tip celice v Markdown in z Enter
se vrnemo v urejavalni način.
Beležnici je pametno dati ime: kliknemo na "Untitled" v prvi vrstici okna v brskalniku ter vnesemo pametnejše ime.
Vse, kar pišemo v beležnico, se (približno) sproti shranjuje v datoteko s tem imenom in s končnico .ipynb
. Datoteka bo v direktoriju, ki je bil prikazan v Jupytru, ko smo beležnico ustvarili.
Datoteka .ipynb
je shranjena v Jupytrovem internem formatu. Lahko jo delimo z drugimi, a za odpiranje je potreben Jupyter. Datoteka v tej obliki je praktična, ker je "živa": mi sami ali pa drugi jo lahko kasneje urejajo in dopolnjujejo, poganjajo programe v njej...
Če želimo svoje zapiske deliti s kom, ki nima Jupytra, bo najprepreosteje, da jih shranimo kot HTML, tako da izberemo File / Download as / HTML.