Une variable est une case nommée où l'on range une valeur. Chaque valeur a un type : un entier (int), un nombre à virgule (float) ou du texte (str). La fonction input() renvoie toujours du texte : si l'utilisateur tape 10 puis 5 et que l'on écrit a + b, Python colle les deux textes et obtient « 105 », pas 15. Ce texte lu comme un nombre vaut 7 fois la somme attendue, et aucune erreur n'est signalée : le programme continue avec la mauvaise valeur. La parade tient en un mot, int(), qui convertit le texte en nombre.
Un bocal étiqueté « 10 » : il peut contenir le nombre dix ou les deux caractères « 1 » et « 0 », et le signe + ne fait pas la même chose dans les deux cas.
Avec des nombres, + additionne : 10 + 5 vaut 15. Avec du texte, + colle les morceaux bout à bout (on dit concaténer) : « 10 » + « 5 » vaut « 105 ». Ce texte, lu comme un nombre, vaut cent cinq, soit 7 fois plus que 15. Le graphique compare, selon la valeur de b, le texte lu comme un nombre et la vraie somme, en échelle logarithmique : plus b est grand, plus l'écart se creuse.
Réglez les deux nombres tapés et le nombre de répétitions. Le premier graphique compare le texte (lu comme un nombre) et la vraie somme selon b ; le point blanc est votre réglage.
Le texte est celui que Python obtient en collant a et b ; il est lu comme un nombre pour être comparé à la somme.
De la même façon, « 10 » * 3 ne vaut pas 30 : Python répète le texte trois fois et obtient « 101010 ». Pour a = 10, répété 2, 3, 5 puis 10 fois, on obtient « 1010 », « 101010 », « 1010101010 » puis un texte de 20 caractères, alors que le bon résultat pour 10 répétitions est 100.
Chips : valeur de a réglée plus haut ; les textes très longs sont tronqués.
Voici la démarche, puis un exemple.
a = input() # l'utilisateur tape 10 b = input() # l'utilisateur tape 5 a + b # '105' : deux textes collés int(a) + int(b) # 15 : la bonne somme type(a) # <class 'str'> "10" * 3 # '101010' : le texte est répété
Python sait lire et ranger une valeur. Comment lui faire prendre une décision ? Les conditions : si, sinon… et l'ordre des tests compte.
Statistiques, finance quantitative, machine learning, deep learning, LLM, agents IA, MLOps : 321 épisodes avec des simulateurs à manipuler, pas des vidéos.
Statistics, quantitative finance, machine learning, deep learning, LLMs, AI agents, MLOps: 321 interactive episodes with simulators to play with, not videos.