Accueil Formations Établissements Mon espace Services Galerie À propos Communauté Portfolio Contact Me contacter

Leçon offerteModule 02 · Leçon 02.025 min

Nombres, textes et booléens

Parcours 06 : Programmation Python : les bases, pas à pas · Spécialisation

Objectif de la leçon

Reconnaître les types de base de Python, vérifier le type d'une valeur et éviter les erreurs classiques entre nombres et textes.

La leçon, diapositive par diapositive

Diapositive 1 sur 9

Objectif de la leçon

  • Connaître les quatre types de base
  • Savoir vérifier le type d'une valeur
  • Convertir un texte en nombre et un nombre en texte
Voix off

Pour un humain, 5000 et cinq mille entre guillemets, c'est pareil. Pour Python, ce sont deux choses très différentes. Comprendre les types t'évitera la majorité des erreurs de débutant. Garde ton éditeur ouvert : chaque diapo de cette leçon contient une ligne à essayer. Les erreurs que tu provoques ici exprès sont celles que tu reconnaîtras plus tard en un coup d'œil.

Diapositive 2 sur 9

Les quatre types de base

  • int : nombre entier, comme 25000
  • float : nombre à virgule, écrit avec un point, comme 2.5
  • str : texte entre guillemets, comme "Montréal"
  • bool : vrai ou faux, True ou False
Voix off

Chaque valeur a un type. Les entiers sont des int, les nombres à virgule des float, les textes des str, pour string, et les valeurs vrai ou faux des bool. Attention : en Python, la virgule des nombres s'écrit avec un point, comme en anglais. Il existe d'autres types, comme les listes et les dictionnaires, que tu verras au module 5. Mais ces quatre-là suffisent pour la plupart des calculs d'une petite activité : des quantités, des prix, des noms et des réponses oui ou non.

Diapositive 3 sur 9

Demander son type à Python

  • print(type(25000))
  • print(type(2.5))
  • print(type("Montréal"))
  • print(type(True))
Voix off

La fonction type te dit à quoi tu as affaire. Python répond successivement class int, class float, class str et class bool. Quand un programme se comporte bizarrement, vérifier le type d'une variable est souvent le bon premier réflexe. Tu n'as pas besoin de demander le type de chaque variable. Mais le jour où un calcul donne un résultat étrange, cette petite ligne te fera gagner beaucoup de temps. On s'en servira au module 6 pour chercher les bugs.

Diapositive 4 sur 9

"5000" n'est pas 5000

  • print(5000 + 2000)
  • print("5000" + "2000")
  • Python affiche : 7000 puis 50002000
Voix off

Entre deux nombres, le signe plus additionne : 7000. Entre deux textes, il colle les textes bout à bout : 50002000. Pour Python, des chiffres entre guillemets sont du texte. C'est l'erreur la plus fréquente des débutants, et tu la retrouveras dans la simulation de ce module. Une astuce pour ne pas te tromper : regarde si la valeur est entre guillemets. Avec des guillemets, c'est du texte, quoi qu'il y ait dedans. Sans guillemets, des chiffres forment un nombre.

Diapositive 5 sur 9

Mélanger texte et nombre

  • print("Total : " + 7000)
  • Python répond : TypeError: can only concatenate str (not "int") to str
Voix off

Python refuse d'additionner un texte et un nombre. Son message veut dire qu'il ne peut coller qu'un texte à un autre texte, et pas un entier. On verra deux solutions : convertir le nombre en texte, ou utiliser une f-string à la fin de ce module. Lis ce message lentement : TypeError veut dire erreur de type. Python te dit exactement ce qui ne va pas, mais en anglais. Prends l'habitude de traduire les messages d'erreur mot à mot, ils deviennent vite familiers.

Diapositive 6 sur 9

Convertir d'un type à l'autre

  • print(int("5000") + 2000)
  • print("Total : " + str(7000))
  • print(float("2.5"))
Voix off

int transforme un texte en entier, float en nombre à virgule, et str transforme un nombre en texte. La conversion échoue si le texte ne ressemble pas à un nombre : int de cinq mille écrit en lettres déclenche une erreur ValueError. C'est aussi le cas de 5 000 écrit avec une espace, ou de 2,5 écrit avec une virgule. À l'inverse, int accepte des espaces au début et à la fin : 5000 entouré d'espaces donne bien 5000. Et int d'un texte comme 2.5 échoue aussi, même avec un point : pour un nombre à virgule, il faut float.

Diapositive 7 sur 9

L'argent : reste en entiers

  • Compte en entiers, en centimes si tes prix en ont
  • Les entiers sont exacts, les float sont parfois arrondis
  • Exemple : 0.1 + 0.2 donne 0.30000000000000004
Voix off

Les nombres à virgule sont stockés en binaire, et certains ne tombent pas juste : 0,1 plus 0,2 donne un tout petit peu plus que 0,3. Pour de l'argent, utilise des entiers, c'est exact et plus simple. Le franc CFA se compte sans centimes : tu calcules en francs. L'euro, le dollar canadien et le dirham ont des centimes, qu'on appelle des cents au Canada, et le dinar tunisien a des millimes. Si tes prix tombent toujours juste, compte en unités entières ; s'ils ont des centimes, compte en centimes : 12,50 euros deviennent 1250. La documentation officielle de Python consacre un chapitre entier à ce problème, qui touche presque tous les langages.

Diapositive 8 sur 9

Les booléens : vrai ou faux

  • en_stock = True
  • print(en_stock)
  • print(25000 > 30000)
  • Python affiche : True puis False
Voix off

Un booléen ne peut valoir que True ou False, toujours avec une majuscule. Une comparaison donne un booléen : 25 000 est-il plus grand que 30 000 ? Non, donc Python affiche False. Ces valeurs vont piloter les décisions de ton programme au module 3. Attention à la majuscule : true sans majuscule provoque une erreur NameError. Et ne mets pas de guillemets : True entre guillemets est un texte, pas un booléen.

Diapositive 9 sur 9

À retenir

  • Quatre types de base : int, float, str et bool
  • Des chiffres entre guillemets sont du texte, pas un nombre
  • int(), float() et str() convertissent ; pour l'argent, reste en entiers
Voix off

Dès qu'un calcul donne un résultat étrange, pense aux types. Un texte qui se fait passer pour un nombre est souvent le coupable. Dans la prochaine leçon, tu fais calculer Python pour de vrai. Pour t'entraîner, demande le type de dix valeurs différentes, en devinant la réponse avant de lancer. Quand tu ne te trompes plus, tu as compris les types.

À retenir

  • int pour les entiers, float pour les nombres à virgule, str pour les textes, bool pour vrai ou faux
  • type() donne le type d'une valeur
  • "5000" est un texte, 5000 est un nombre
  • int(), float() et str() convertissent d'un type à l'autre
  • Pour l'argent, on calcule en entiers : en centimes ou en millimes si tes prix en ont

Fais les exercices, le quiz et obtiens ton certificat dans ton espace

Avec ton compte, les deux premiers modules sont offerts : leçons, labs, simulations, quiz et tuteur. Débloque la suite du parcours pour 100 000 GNF. Le certificat vérifiable, délivré à la fin, coûte 399 000 GNF.