{ "cells": [ { "cell_type": "markdown", "id": "d6453138", "metadata": {}, "source": [ "# TD : Prise en main de Jupyter Notebook\n", "\n", "Objectif :\n", "- Découvrir les principales fonctionnalités d'un notebook\n", "- Modifier et créer des cellules de texte\n", "- Découvrir la syntaxe Markdown\n", "- Savoir créer, modifier et exécuter des cellules de code Python\n", "\n", "Une première fonctionnalité de découverte : vous avez réussi à ouvrir ce notebook !\n" ] }, { "cell_type": "markdown", "id": "0b2f4495", "metadata": {}, "source": [ "## Première partie : prise en main des cellules de code\n", "Dans les cellules de code, on écrit du code Python... selon la syntaxe Python !\n", "Pour éxecuter une cellule, on se place dedans en cliquant dessus, puis on fait `shift + entrée`. Le résultat de l'exécution s'affiche ensuite juste en dessus de la cellule s'il y en a un. Essayez sur le bloc de code suivant :" ] }, { "cell_type": "code", "execution_count": null, "id": "168301b9", "metadata": {}, "outputs": [], "source": [ "# On peut faire un joli commentaire : le code suivant doit afficher la chaine de caractère Hello World\n", "print(\"Hello world\")" ] }, { "cell_type": "markdown", "id": "2470b22b", "metadata": {}, "source": [ "Par défaut, si l'on termine un bloc de code avec uniquement le nom d'une variable, ou un calcul sans le stocker dans une variable, alors cela sera affiché en dessous de la cellule après l'exécution, même sans instruction `print`. Testez avec l'exemple des deux blocsci-dessous :" ] }, { "cell_type": "code", "execution_count": null, "id": "37802d6f", "metadata": {}, "outputs": [], "source": [ "# La cellule se termine par un résultat qui n'est pas stocké dans une variable : le résultat s'affiche en-dessous\n", "1 + 1" ] }, { "cell_type": "code", "execution_count": null, "id": "e7f5cc2e", "metadata": {}, "outputs": [], "source": [ "# Le résultat est stocké dans une variable : aucun affichage\n", "c = 42* 176" ] }, { "cell_type": "code", "execution_count": null, "id": "e9982cc9", "metadata": {}, "outputs": [], "source": [ "# On termine la cellule par un nom de variable : son contenu s'affiche en-dessous\n", "c" ] }, { "cell_type": "markdown", "id": "f48d4aa9", "metadata": {}, "source": [ "Un point essentiel à comprendre : l'ordre d'exécution a son importance ! C'est pour cela que l'ordre est bien indiqué à gauche d'une cellule de code. Prenons l'exemple ci-dessous : \n", "* Commencez par executer les cellules dans leur ordre d'apparition, et constatez ce qu'il se passe.\n", "* Exécutez-les ensuite en suivant l'ordre indiqué en commentaire du code. Que constatez-vous ?\n", "* Modifier le contenu de la variable var, puis réexécutez le calcul a * var pour constater si les variables sont bien mises à jour." ] }, { "cell_type": "code", "execution_count": null, "id": "5abcc3cf", "metadata": {}, "outputs": [], "source": [ "# A executer en deuxième\n", "a = 12 * var\n", "print(\"Le résultat du calcul \", 12, \"*\", var, \"est \", a)" ] }, { "cell_type": "code", "execution_count": null, "id": "f9f7e419", "metadata": {}, "outputs": [], "source": [ "# A executer en premier\n", "var = 56" ] }, { "cell_type": "markdown", "id": "99301668", "metadata": {}, "source": [ "### A vous de jouer :\n", "Insérez ci-dessous une nouvelle cellule de code. Créez une liste de cinq nombre, et multiplier chacun de ces nombres par 5 avant d'en afficher le résultat." ] }, { "cell_type": "markdown", "id": "5d0c722a", "metadata": {}, "source": [ "### Quelques astuces :\n", "* Pour réinitialiser le notebook, on peut redémarrer le kernel (`kernel -> restart`)\n", "* On peut aussi effacer tous les résultats des cellules de code (`cell - > all output -> clear`)\n", "* Une fois une cellule sélectionnée, on peut la déplacer vers le haut ou le bas avec les flèches à gauche de l'instruction `exécuter`\n", "* Pensez à sauvegarder régulièrement (`ctrl + s` suffit)\n", "* Une fois terminé, vous pouvez exporter votre notebook sous différents formats, notament `html` pour le publier en ligne." ] }, { "cell_type": "markdown", "id": "625f7f9a", "metadata": {}, "source": [ "## Deuxième partie : prise en main des cellules markdown" ] }, { "cell_type": "markdown", "id": "088e726a", "metadata": {}, "source": [ "Pour modifier une cellule de markdown, il suffit de double-cliquer sur la cellule, ce qui la bascule alors en mode édition. Testons avec cette cellule : modifiez le texte ci-dessous pour qu'il fasse apparaitre vos informations personnelles.\n", "\n", "Prénom NOM, promo CDAXXX." ] }, { "cell_type": "markdown", "id": "9c7e730d", "metadata": {}, "source": [ "### Les bases de Markdown\n", "En cas de besoin, le plus simple est de se référer à un résumé de la syntaxe *markdown* : https://www.christopheducamp.com/2014/09/18/love-markdown/#code\n", "\n", "En résumé, vous trouverez ci-dessous la liste des principales fonctionnalités utiles pour un notebook.\n", "**Consigne** : Pour chacune, créer une cellule markdown pour tester et valider l'utilisation de la syntaxe.\n", "\n", "* Titres" ] }, { "cell_type": "raw", "id": "65813099", "metadata": {}, "source": [ "Les titres s'écrivent grâce au symbole #\n", "# Titre de niveau 1\n", "## Titre de niveau 2\n", "### Titre de niveau 3\n", "\n", "(et ce genre de block dans un notebook correspond à du texte brut !)" ] }, { "cell_type": "markdown", "id": "3feaa3c6", "metadata": {}, "source": [ "* Emphase (**gras**, *italique*, ~~barré~~)" ] }, { "cell_type": "raw", "id": "2cbf458e", "metadata": {}, "source": [ "**gras**, *italique*, ~~barré~~" ] }, { "cell_type": "markdown", "id": "1693882e", "metadata": {}, "source": [ "* Sauts de ligne, lignes horizontales et blocs de texte" ] }, { "cell_type": "raw", "id": "5aa0a45e", "metadata": {}, "source": [ "Le saut de ligne s'obtient avec la balise
\n", "La ligne horizontale avec au moins trois astérisques ou underscore :\n", "***\n", "ou\n", "___\n", "\n", "Les blocs de texte s'obtiennent avec la balise >" ] }, { "cell_type": "markdown", "id": "cef21a9e", "metadata": {}, "source": [ "* Listes ordonnées et non ordonnées" ] }, { "cell_type": "raw", "id": "16fceda9", "metadata": {}, "source": [ "On organise une liste ordonnée avec des numéros :\n", "1. Premier item\n", "2. Deuxième item\n", " 1. Premier sous-item\n", " 2. Deuxième sous-item\n", " \n", "Pour le non-ordonnée, on utilise au choix +, - ou *\n", "+ Premier item\n", "- Deuxième item\n", "* Troisième item" ] }, { "cell_type": "markdown", "id": "7baac6a8", "metadata": {}, "source": [ "* Tableau" ] }, { "cell_type": "raw", "id": "ea81e0d5", "metadata": {}, "source": [ "Les | séparent les colonnes et il doit y avoir au moins trois tirets entre l'entête et le contenu du tableau ( --- ).\n", "| Col 1 | Col2 | Col 3 |\n", "| ------ | ----- | ------ |\n", "| A | B | C |\n", "| D | E | F |" ] }, { "cell_type": "markdown", "id": "214c481b", "metadata": {}, "source": [ "* Liens URL et images" ] }, { "cell_type": "raw", "id": "a65839e8", "metadata": {}, "source": [ "[Description de l'URL : lien ENI Ecole](https://www.eni-ecole.fr/)\n", "![Description de l'image : logo ENI](https://www.eni-ecole.fr/wp-content/uploads/2022/08/logo_eni.png)" ] }, { "cell_type": "markdown", "id": "de5da1c4", "metadata": {}, "source": [ "* Blocs de texte et blocs de code" ] }, { "cell_type": "raw", "id": "c553a46d", "metadata": {}, "source": [ "```Ceci est un bloc```" ] }, { "cell_type": "markdown", "id": "6cf514d9", "metadata": {}, "source": [ "## Conclusion\n", "\n", "Vous avez découvert les premières manipulations de base d'un notebook Jupyter ! Il ne vous reste plus qu'à les mettre en pratique dans des notebook qui iront plus loin en terme de code Python, et qui à terme présenteront vos analyses de données et les résultats produits par vos algorithmes d'apprentissage." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.16" } }, "nbformat": 4, "nbformat_minor": 5 }