[{"data":1,"prerenderedAt":867},["ShallowReactive",2],{"page-\u002Fpython\u002Fpremiers-pas":3,"pieces-python":825,"autour-\u002Fpython\u002Fpremiers-pas":850,"prerequis-\u002Fpython\u002Fpremiers-pas":855,"plan-python":856},{"id":4,"title":5,"body":6,"description":794,"extension":795,"ligne":74,"meta":796,"motsCles":797,"navigation":799,"niveau":800,"path":801,"prerequis":802,"ressources":803,"seo":815,"sources":816,"stem":823,"__hash__":824},"docs\u002Fpython\u002F01.premiers-pas.md","Premiers pas avec Python",{"type":7,"value":8,"toc":783},"minimark",[9,14,32,36,51,54,57,79,92,96,103,155,165,169,183,200,203,215,222,226,236,271,285,289,300,402,418,448,484,493,497,507,590,593,601,611,620,624,632,706,714,723,727,779],[10,11,13],"h2",{"id":12},"ce-que-tu-vas-apprendre","Ce que tu vas apprendre",[15,16,17,21,29],"ul",{},[18,19,20],"li",{},"Installer Python et vérifier qu'il fonctionne.",[18,22,23,24,28],{},"Lancer une ligne de code, puis un fichier ",[25,26,27],"code",{},".py",".",[18,30,31],{},"Stocker des valeurs dans des variables et les afficher avec des f-strings.",[10,33,35],{"id":34},"installer-python","Installer Python",[37,38,39,43,44,28],"p",{},[40,41,42],"strong",{},"Python"," est un langage de programmation réputé pour sa lisibilité. La version stable actuelle est la 3.15, publiée sur ",[45,46,50],"a",{"href":47,"rel":48},"https:\u002F\u002Fwww.python.org\u002Fdownloads\u002F",[49],"nofollow","python.org",[37,52,53],{},"Sous Windows, télécharge l'installateur sur ce site. Coche la case « Add python.exe to PATH » avant de valider. Sous macOS et Linux, Python est souvent déjà présent.",[37,55,56],{},"Vérifie ensuite dans un terminal :",[58,59,64],"pre",{"className":60,"code":61,"language":62,"meta":63,"style":63},"language-bash shiki shiki-themes github-light-default github-dark-default github-dark-default","python --version\n","bash","",[25,65,66],{"__ignoreMap":63},[67,68,71,75],"span",{"class":69,"line":70},"line",1,[67,72,74],{"class":73},"sIXEE","python",[67,76,78],{"class":77},"s5iOY"," --version\n",[37,80,81,82,85,86,88,89,91],{},"Sous Linux et macOS, la commande s'appelle souvent ",[25,83,84],{},"python3",". Dans ce cours, écris ",[25,87,84],{}," si ",[25,90,74],{}," n'est pas reconnu.",[10,93,95],{"id":94},"linterpréteur","L'interpréteur",[37,97,98,99,102],{},"L'",[40,100,101],{},"interpréteur"," est le programme qui lit ton code Python et l'exécute. Lance-le seul pour discuter avec lui :",[58,104,107],{"className":105,"code":106,"language":74,"meta":63,"style":63},"language-python shiki shiki-themes github-light-default github-dark-default github-dark-default",">>> 2 + 3\n5\n>>> print(\"Bonjour\")\nBonjour\n",[25,108,109,124,130,149],{"__ignoreMap":63},[67,110,111,115,118,121],{"class":69,"line":70},[67,112,114],{"class":113},"sOnC1",">>>",[67,116,117],{"class":77}," 2",[67,119,120],{"class":113}," +",[67,122,123],{"class":77}," 3\n",[67,125,127],{"class":69,"line":126},2,[67,128,129],{"class":77},"5\n",[67,131,133,135,138,142,146],{"class":69,"line":132},3,[67,134,114],{"class":113},[67,136,137],{"class":77}," print",[67,139,141],{"class":140},"scfrF","(",[67,143,145],{"class":144},"shWOn","\"Bonjour\"",[67,147,148],{"class":140},")\n",[67,150,152],{"class":69,"line":151},4,[67,153,154],{"class":140},"Bonjour\n",[37,156,157,158,160,161,164],{},"Les signes ",[25,159,114],{}," sont écrits par Python, pas par toi. Tape ",[25,162,163],{},"exit()"," pour quitter. C'est pratique pour tester une idée en quelques secondes.",[10,166,168],{"id":167},"lancer-un-script","Lancer un script",[37,170,171,172,175,176,178,179,182],{},"Un ",[40,173,174],{},"script"," est un fichier texte qui contient du code, avec l'extension ",[25,177,27],{},". Crée le fichier ",[25,180,181],{},"bonjour.py"," :",[58,184,186],{"className":105,"code":185,"filename":181,"language":74,"meta":63,"style":63},"print(\"Bienvenue sur mon site de recettes\")\n",[25,187,188],{"__ignoreMap":63},[67,189,190,193,195,198],{"class":69,"line":70},[67,191,192],{"class":77},"print",[67,194,141],{"class":140},[67,196,197],{"class":144},"\"Bienvenue sur mon site de recettes\"",[67,199,148],{"class":140},[37,201,202],{},"Puis, dans le dossier du fichier, lance-le :",[58,204,206],{"className":60,"code":205,"language":62,"meta":63,"style":63},"python bonjour.py\n",[25,207,208],{"__ignoreMap":63},[67,209,210,212],{"class":69,"line":70},[67,211,74],{"class":73},[67,213,214],{"class":144}," bonjour.py\n",[37,216,217,218,221],{},"Python exécute les lignes de haut en bas, une par une. ",[25,219,220],{},"print()"," affiche son contenu dans le terminal.",[10,223,225],{"id":224},"les-variables","Les variables",[37,227,228,229,232,233,182],{},"Une ",[40,230,231],{},"variable"," est un nom qui désigne une valeur. On la crée avec le signe ",[25,234,235],{},"=",[58,237,239],{"className":105,"code":238,"language":74,"meta":63,"style":63},"nom = \"Crêpes\"\nportions = 4\nprix = 3.5\n",[25,240,241,251,261],{"__ignoreMap":63},[67,242,243,246,248],{"class":69,"line":70},[67,244,245],{"class":140},"nom ",[67,247,235],{"class":113},[67,249,250],{"class":144}," \"Crêpes\"\n",[67,252,253,256,258],{"class":69,"line":126},[67,254,255],{"class":140},"portions ",[67,257,235],{"class":113},[67,259,260],{"class":77}," 4\n",[67,262,263,266,268],{"class":69,"line":132},[67,264,265],{"class":140},"prix ",[67,267,235],{"class":113},[67,269,270],{"class":77}," 3.5\n",[37,272,273,274,277,278,281,282,284],{},"Il n'y a pas de mot-clé de déclaration. Le nom s'écrit en minuscules, avec des ",[25,275,276],{},"_"," entre les mots : ",[25,279,280],{},"temps_cuisson",". Le signe ",[25,283,235],{}," range la valeur de droite dans le nom de gauche, il ne compare pas.",[10,286,288],{"id":287},"les-types-de-base","Les types de base",[37,290,291,292,295,296,299],{},"Chaque valeur a un ",[40,293,294],{},"type",", qui dit ce qu'on peut faire avec elle. La fonction ",[25,297,298],{},"type()"," le révèle.",[301,302,303,319],"table",{},[304,305,306],"thead",{},[307,308,309,313,316],"tr",{},[310,311,312],"th",{},"Type",[310,314,315],{},"Exemple",[310,317,318],{},"Usage",[320,321,322,338,353,368,387],"tbody",{},[307,323,324,330,335],{},[325,326,327],"td",{},[25,328,329],{},"str",[325,331,332],{},[25,333,334],{},"\"Crêpes\"",[325,336,337],{},"Du texte.",[307,339,340,345,350],{},[325,341,342],{},[25,343,344],{},"int",[325,346,347],{},[25,348,349],{},"4",[325,351,352],{},"Un nombre entier.",[307,354,355,360,365],{},[325,356,357],{},[25,358,359],{},"float",[325,361,362],{},[25,363,364],{},"3.5",[325,366,367],{},"Un nombre à virgule (écrite avec un point).",[307,369,370,375,384],{},[325,371,372],{},[25,373,374],{},"bool",[325,376,377,380,381],{},[25,378,379],{},"True",", ",[25,382,383],{},"False",[325,385,386],{},"Vrai ou faux.",[307,388,389,394,399],{},[325,390,391],{},[25,392,393],{},"NoneType",[325,395,396],{},[25,397,398],{},"None",[325,400,401],{},"L'absence de valeur.",[58,403,405],{"className":105,"code":404,"language":74,"meta":63,"style":63},"print(type(portions))\n",[25,406,407],{"__ignoreMap":63},[67,408,409,411,413,415],{"class":69,"line":70},[67,410,192],{"class":77},[67,412,141],{"class":140},[67,414,294],{"class":77},[67,416,417],{"class":140},"(portions))\n",[37,419,420,421,424,425,380,428,380,431,380,434,437,438,440,441,443,444,447],{},"Ce code affiche ",[25,422,423],{},"\u003Cclass 'int'>",". Les opérateurs ",[25,426,427],{},"+",[25,429,430],{},"-",[25,432,433],{},"*",[25,435,436],{},"\u002F"," calculent. Attention : ",[25,439,436],{}," donne toujours un ",[25,442,359],{},", tandis que ",[25,445,446],{},"\u002F\u002F"," donne la division entière.",[58,449,451],{"className":105,"code":450,"language":74,"meta":63,"style":63},"print(7 \u002F 2)\nprint(7 \u002F\u002F 2)\n",[25,452,453,469],{"__ignoreMap":63},[67,454,455,457,459,462,465,467],{"class":69,"line":70},[67,456,192],{"class":77},[67,458,141],{"class":140},[67,460,461],{"class":77},"7",[67,463,464],{"class":113}," \u002F",[67,466,117],{"class":77},[67,468,148],{"class":140},[67,470,471,473,475,477,480,482],{"class":69,"line":126},[67,472,192],{"class":77},[67,474,141],{"class":140},[67,476,461],{"class":77},[67,478,479],{"class":113}," \u002F\u002F",[67,481,117],{"class":77},[67,483,148],{"class":140},[37,485,486,487,489,490,28],{},"Résultat : ",[25,488,364],{}," puis ",[25,491,492],{},"3",[10,494,496],{"id":495},"les-f-strings","Les f-strings",[37,498,228,499,502,503,506],{},[40,500,501],{},"f-string"," est un texte précédé d'un ",[25,504,505],{},"f",", où l'on glisse des valeurs entre accolades :",[58,508,510],{"className":105,"code":509,"language":74,"meta":63,"style":63},"nom = \"Crêpes\"\nportions = 4\nprint(f\"{nom} pour {portions} personnes\")\nprint(f\"Total : {portions * 3.5} euros\")\n",[25,511,512,520,528,563],{"__ignoreMap":63},[67,513,514,516,518],{"class":69,"line":70},[67,515,245],{"class":140},[67,517,235],{"class":113},[67,519,250],{"class":144},[67,521,522,524,526],{"class":69,"line":126},[67,523,255],{"class":140},[67,525,235],{"class":113},[67,527,260],{"class":77},[67,529,530,532,534,536,539,542,545,548,551,553,556,558,561],{"class":69,"line":132},[67,531,192],{"class":77},[67,533,141],{"class":140},[67,535,505],{"class":113},[67,537,538],{"class":144},"\"",[67,540,541],{"class":113},"{",[67,543,544],{"class":140},"nom",[67,546,547],{"class":113},"}",[67,549,550],{"class":144}," pour ",[67,552,541],{"class":113},[67,554,555],{"class":140},"portions",[67,557,547],{"class":113},[67,559,560],{"class":144}," personnes\"",[67,562,148],{"class":140},[67,564,565,567,569,571,574,576,578,580,583,585,588],{"class":69,"line":151},[67,566,192],{"class":77},[67,568,141],{"class":140},[67,570,505],{"class":113},[67,572,573],{"class":144},"\"Total : ",[67,575,541],{"class":113},[67,577,255],{"class":140},[67,579,433],{"class":113},[67,581,582],{"class":77}," 3.5",[67,584,547],{"class":113},[67,586,587],{"class":144}," euros\"",[67,589,148],{"class":140},[37,591,592],{},"Résultat :",[58,594,599],{"className":595,"code":597,"language":598},[596],"language-text","Crêpes pour 4 personnes\nTotal : 14.0 euros\n","text",[25,600,597],{"__ignoreMap":63},[37,602,603,604,607,608,28],{},"Tout ce qui est entre ",[25,605,606],{},"{}"," est calculé puis inséré dans le texte. Pour deux décimales, ajoute un format : ",[25,609,610],{},"{prix:.2f}",[612,613,614],"tip",{},[37,615,616,617,619],{},"Utilise les f-strings plutôt que d'assembler du texte avec ",[25,618,427],{},". Elles sont plus courtes et acceptent les nombres sans conversion.",[10,621,623],{"id":622},"demander-une-valeur","Demander une valeur",[37,625,626,629,630,28],{},[25,627,628],{},"input()"," met le programme en pause et renvoie ce que l'utilisateur tape, toujours sous forme de ",[25,631,329],{},[58,633,636],{"className":105,"code":634,"filename":635,"language":74,"meta":63,"style":63},"nom = input(\"Ta recette préférée ? \")\npersonnes = int(input(\"Pour combien de personnes ? \"))\nprint(f\"{nom} pour {personnes} personnes\")\n","accueil.py",[25,637,638,654,677],{"__ignoreMap":63},[67,639,640,642,644,647,649,652],{"class":69,"line":70},[67,641,245],{"class":140},[67,643,235],{"class":113},[67,645,646],{"class":77}," input",[67,648,141],{"class":140},[67,650,651],{"class":144},"\"Ta recette préférée ? \"",[67,653,148],{"class":140},[67,655,656,659,661,664,666,669,671,674],{"class":69,"line":126},[67,657,658],{"class":140},"personnes ",[67,660,235],{"class":113},[67,662,663],{"class":77}," int",[67,665,141],{"class":140},[67,667,668],{"class":77},"input",[67,670,141],{"class":140},[67,672,673],{"class":144},"\"Pour combien de personnes ? \"",[67,675,676],{"class":140},"))\n",[67,678,679,681,683,685,687,689,691,693,695,697,700,702,704],{"class":69,"line":132},[67,680,192],{"class":77},[67,682,141],{"class":140},[67,684,505],{"class":113},[67,686,538],{"class":144},[67,688,541],{"class":113},[67,690,544],{"class":140},[67,692,547],{"class":113},[67,694,550],{"class":144},[67,696,541],{"class":113},[67,698,699],{"class":140},"personnes",[67,701,547],{"class":113},[67,703,560],{"class":144},[67,705,148],{"class":140},[37,707,708,711,712,28],{},[25,709,710],{},"int()"," convertit le texte en entier. Sans elle, tu ne pourrais pas faire de calcul avec ",[25,713,699],{},[715,716,717],"warning",{},[37,718,719,720,722],{},"Si l'utilisateur tape « abc » à la place d'un nombre, ",[25,721,710],{}," provoque une erreur. Tu apprendras à la gérer dans le cours sur les exceptions.",[10,724,726],{"id":725},"à-retenir","À retenir",[15,728,729,736,743,748,762,768],{},[18,730,731,732,735],{},"Python s'installe depuis python.org ; ",[25,733,734],{},"python --version"," vérifie l'installation.",[18,737,738,739,742],{},"L'interpréteur teste une ligne, ",[25,740,741],{},"python fichier.py"," lance un script.",[18,744,745,746,28],{},"Une variable est un nom posé sur une valeur avec ",[25,747,235],{},[18,749,750,751,380,753,380,755,380,757,759,760,28],{},"Les types de base sont ",[25,752,329],{},[25,754,344],{},[25,756,359],{},[25,758,374],{}," et ",[25,761,398],{},[18,763,764,765,767],{},"Une f-string insère des valeurs avec ",[25,766,606],{}," dans un texte.",[18,769,770,772,773,775,776,28],{},[25,771,628],{}," renvoie toujours du texte ; convertis-le avec ",[25,774,710],{}," ou ",[25,777,778],{},"float()",[780,781,782],"style",{},"html pre.shiki code .sIXEE, html code.shiki .sIXEE{--shiki-light:#953800;--shiki-default:#FFA657;--shiki-dark:#FFA657}html pre.shiki code .s5iOY, html code.shiki .s5iOY{--shiki-light:#0550AE;--shiki-default:#79C0FF;--shiki-dark:#79C0FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .shWOn, html code.shiki .shWOn{--shiki-light:#0A3069;--shiki-default:#A5D6FF;--shiki-dark:#A5D6FF}html pre.shiki code .sOnC1, html code.shiki .sOnC1{--shiki-light:#CF222E;--shiki-default:#FF7B72;--shiki-dark:#FF7B72}html pre.shiki code .scfrF, html code.shiki .scfrF{--shiki-light:#1F2328;--shiki-default:#E6EDF3;--shiki-dark:#E6EDF3}",{"title":63,"searchDepth":126,"depth":132,"links":784},[785,786,787,788,789,790,791,792,793],{"id":12,"depth":126,"text":13},{"id":34,"depth":126,"text":35},{"id":94,"depth":126,"text":95},{"id":167,"depth":126,"text":168},{"id":224,"depth":126,"text":225},{"id":287,"depth":126,"text":288},{"id":495,"depth":126,"text":496},{"id":622,"depth":126,"text":623},{"id":725,"depth":126,"text":726},"Installer Python, utiliser l'interpréteur, lancer un script, puis manipuler variables, types de base et f-strings.","md",{},[798,101,174,231,294,501,668,192],"installer Python",true,"debutant","\u002Fpython\u002Fpremiers-pas",null,[804,808,812],{"nom":805,"url":806,"type":807},"Le tutoriel officiel Python, en français","https:\u002F\u002Fdocs.python.org\u002Ffr\u002F3\u002Ftutorial\u002Findex.html","doc",{"nom":809,"url":810,"type":811},"OpenClassrooms, Apprenez les bases du langage Python","https:\u002F\u002Fopenclassrooms.com\u002Ffr\u002Fcourses\u002F7168871-apprenez-les-bases-du-langage-python","cours",{"nom":813,"url":814,"type":811},"Grafikart, Apprendre Python","https:\u002F\u002Fgrafikart.fr\u002Ftutoriels\u002Fpython",{"title":5,"description":794},[817,820],{"nom":818,"url":819},"Documentation de Python en français","https:\u002F\u002Fdocs.python.org\u002Ffr\u002F3\u002Ftutorial\u002Fintroduction.html",{"nom":821,"url":822},"Installer et utiliser Python","https:\u002F\u002Fdocs.python.org\u002Ffr\u002F3\u002Fusing\u002Findex.html","python\u002F01.premiers-pas","2_-BZjwlh8sx45xwWm32E7a_Tz_KvV5q15a1eTZ9Y7M",[826,827,831,835,839,843,847],{"path":801,"title":5,"stem":823},{"path":828,"title":829,"stem":830},"\u002Fpython\u002Fconditions-et-boucles","Conditions et boucles","python\u002F02.conditions-et-boucles",{"path":832,"title":833,"stem":834},"\u002Fpython\u002Ffonctions-et-modules","Fonctions et modules","python\u002F03.fonctions-et-modules",{"path":836,"title":837,"stem":838},"\u002Fpython\u002Fcollections","Listes, dictionnaires et tuples","python\u002F04.collections",{"path":840,"title":841,"stem":842},"\u002Fpython\u002Ffichiers-et-exceptions","Fichiers, exceptions et JSON","python\u002F05.fichiers-et-exceptions",{"path":844,"title":845,"stem":846},"\u002Fpython\u002Fclasses-et-environnements","Classes, annotations et environnements virtuels","python\u002F06.classes-et-environnements",{"path":848,"title":42,"stem":849},"\u002Fpython","python\u002Findex",[851,853],{"title":42,"path":848,"stem":849,"description":852,"children":-1},"Le mémo de Python 3 : lancer un script, types, structures de contrôle, fonctions, collections, fichiers, exceptions, classes et venv.",{"title":829,"path":828,"stem":830,"description":854,"children":-1},"Faire des choix avec if, elif et else, répéter des actions avec for et while, et comprendre pourquoi l'indentation compte en Python.",[],[857,858,859,860,862,863,865],{"path":801,"title":5,"niveau":800,"stem":823},{"path":828,"title":829,"niveau":800,"stem":830},{"path":832,"title":833,"niveau":800,"stem":834},{"path":836,"title":837,"niveau":861,"stem":838},"intermediaire",{"path":840,"title":841,"niveau":861,"stem":842},{"path":844,"title":845,"niveau":864,"stem":846},"avance",{"path":848,"title":42,"niveau":866,"stem":849},"memo",1794583458825]