Arborescence

Programmer

Python 1 — variables, saisie, conditions

De la première ligne exécutée au premier programme qui réagit à l'utilisateur.

3 hDès 10 ansFiche G2

01Objectif

À la fin de cette séquence : Écrire un programme qui demande une information, la traite selon une condition, et affiche un résultat juste — en comprenant chaque ligne écrite.

02L'essentiel

Une variable est une boîte étiquetée

age = 12 met la valeur 12 dans une boîte nommée age. Le signe égal n'est pas une égalité mathématique : c'est un rangement.

Les types ne se mélangent pas impunément

input() rend toujours du texte. "12" + 1 échoue ; il faut convertir : int(input()). C'est la toute première erreur de chaque débutant.

La condition compare, l'affectation range

Un seul = range une valeur, deux == comparent. Confondre les deux est la deuxième erreur la plus fréquente.

L'indentation est la syntaxe

En Python, ce sont les espaces en début de ligne qui disent ce qui est à l'intérieur du if. Un décalage n'est pas une question de style : il change le programme.

03Le schéma

1Demander al'utilisateur2Convertir le texte ennombre3Tester la condition4Afficher le resultat
L'étape 2 est celle qu'on oublie, et l'erreur qui en résulte semble incompréhensible : le programme additionne des textes au lieu de nombres.

04Le code

age = int(input("Quel est votre age ? "))

if age < 12:
    print("Tarif enfant")
elif age < 65:
    print("Tarif adulte")
else:
    print("Tarif senior")

05À retenir

  • input() rend du texte, toujours. Convertissez avec int() ou float().
  • Un = range, deux == comparent.
  • L'indentation fait partie du code, pas de la présentation.

06Exercice

Écrivez un programme qui demande un âge et répond « tarif enfant », « tarif adulte » ou « tarif senior » selon trois tranches. Testez-le avec une valeur limite exacte, par exemple 18.

Indice — Les bornes sont le piège : vérifiez si vous avez écrit < ou <=, et ce que cela change à 18 ans.

07Vérification des acquis

Pourquoi input() doit-il souvent être converti ?

Parce qu'il rend toujours une chaîne de caractères, même si l'utilisateur tape des chiffres. Sans int(), toute comparaison ou addition numérique échoue ou donne un résultat absurde.

Quelle est la différence entre = et == ?

= affecte une valeur à une variable. == pose une question et rend vrai ou faux. Employer l'un pour l'autre est une erreur classique.