TP : Jupyter : les deux types de cellules#

Objectif pédagogique

Mieux comprendre les deux types de cellules qui composent un carnet Jupyter et permettent d’entrelacer texte riche et code exécutable.

L’intérêt des carnets numériques est de permettre d’entrelacer, au sein d’un même document, narration, interaction, calcul, visualisation et programmation. Pour cela, Jupyter propose un modèle très simple : un carnet Jupyter est une simple succession de cellules de deux types :

  • Des cellules de texte riche, au format Markdown / MyST;

  • Des cellules de code exécutable.

Markdown : Kesako ?

  • Un langage à balisage léger pour écrire du texte riche.

  • Avec une syntaxe facile à lire et écrire.

Markdown vous permet ainsi de rédiger du texte mis en forme et structuré (sections, listes à puces, …) avec, par exemple :

  • Du contenu multimédia: images, vidéos, …

  • Des mathématiques : \(e^{2i\pi}=1\) ;

  • Des fragments de code non exécutables : x = x + 1 ;

  • Des liens hypertexte : lien vers l’index ;

  • Des tableaux :

    Colonne 1

    Colonne 2

    cellule 1

    cellule 2

  • Du HTML : <br>, <div>, …

MyST

MyST est une extension de Markdown fournissant des structures supplémentaires (encarts, références croisées, citations, inclusions, …), doublée d’une collection d’outils pour publier des documents scientifiques offrant une navigation web riche.

Exercice 1

Consultez les cellules de texte riche de ce document pour voir comment elles ont été rédigées en Markdown/MyST.

Comment changer le type d’une cellule#

  • À la souris : dans la barre d’outil de la feuille, sélectionnez Markdown ou Code.

  • Au clavier : passez en mode commande puis utilisez Y pour convertir une cellule Markdown en cellule de code.

  • Inversement, toujours en mode commande, utilisez M pour convertir une cellule de code en cellule de Markdown.

Exercice 2

La cellule ci-dessous est « accidentellement » une cellule de texte. Changez-la en cellule de code pour pouvoir l’exécuter.

import codecs codecs.decode(“Oenib!”, “rot_13”)

En savoir plus sur la syntaxe Markdown ♣#

Voici quelques tutoriels que vous pourrez explorer après le TP :

Conclusion#

Dans la plupart des cas d’usage, le rôle d’un carnet numérique est de transmettre des idées, en racontant une histoire interactive. L’alternance des cellules permet la micro-scénarisation de cette histoire, avec des cellules de texte riche qui en donnent la trame narrative et des cellules de code exécutable, synthétiques et parcimonieuses, qui engagent le lecteur par des interactions.