Jupyter : le noyau#
Exercice : à quoi sert le noyau
Cliquez sur la cellule suivante puis exécutez la en appuyant sur les touches Maj+Entrée :
1 + 1
Explication
Techniquement parlant, le navigateur web a envoyé le contenu 1 + 1 de la cellule à un
noyau qui l’a exécuté, avant de renvoyer le résultat à afficher. Le noyau que
nous utilisons ici (Python 3) permet de travailler en Python. Il existe des noyaux
pour de nombreux langages de programmation et systèmes de calculs : Julia, Python, R –
d’où le nom de Jupyter –, mais aussi des dizaines d’autres dont C++ ou SageMath.
Exercice : changer de noyau
À un moment donné, une feuille Jupyter est reliée à un unique noyau. Le nom de ce noyau est affiché en haut à droite de la feuille de travail. Cliquez dessus pour afficher la liste des noyaux disponibles sur votre instance de Jupyter.
S’il y des noyaux pour d’autres langages, par exemple C++, essayez la cellule ci-dessus avec ces autres noyaux. Puis sélectionnez à nouveau le noyau Python.
Exercice : relancer le noyau
Consultez le code de la cellule ci-dessous. Notez qu’il contient une boucle infinie: la condition étant toujours vraie, la boucle
whilene s’arrêtera jamais.Exécutez les deux cellules ci-dessous avec Maj-Enter :
i = 0
while True: # boucle infinie!
i = i + 2
1 + 1
Exercice (suite)
Notez l’étoile dans les
In[*]ci-dessus; elle indique que les deux cellules sont en attente de la fin du calcul – fin qui n’arrivera ici jamais du fait de la boucle infinie dans la première cellule.Pour pouvoir reprendre la main, il faut arrêter ou redémarrer le noyau.
Relancez le noyau, via le menu déroulant «Noyau» ou «Kernel» de la barre de menu tout en haut de la page web. Alternativement, vous pouvez utiliser le raccourci clavier Esc-0-0 (attention: ce raccourci n’est pas disponible sur certain navigateurs web comme Safari).
Réessayez l’exercice, cette fois en arrêtant le noyau.
Bilan
Dans cette feuille, vous avez vu comment changer, arrêter, ou relancer le noyau. Cela permet notamment de changer de langage de programmation, de sortir d’une boucle infinie, ou de repartir sur une base neuve en oubliant les calculs précédents.