Variables, types et opérations

Première leçon du cours Python fondamentaux, en accès libre : environ 15 minutes, 3 exercices et 3 questions de quiz. C'est la leçon de base du catalogue ; dans l'espace étudiant, elle est réécrite pour ton profil.

Objectifs

  • Créer des variables et leur affecter des valeurs
  • Reconnaître les types int, float, str et bool avec type()
  • Convertir une valeur d'un type à un autre et l'afficher avec une f-string

VariablesTypes de basef-strings

Variables, types et opérations

En Python, une variable est simplement une étiquette posée sur une valeur. On la crée en écrivant son nom, le signe =, puis la valeur. Pas besoin de déclarer le type à l’avance : Python le déduit tout seul.

prenom = "Awa"        # une chaîne de caractères (str)
age = 29              # un entier (int)
taille = 1.68         # un nombre décimal (float)
est_inscrite = True   # un booléen (bool) : True ou False

print(prenom, age)    # affiche : Awa 29
print(type(taille))   # affiche : <class 'float'>

Choisissez des noms explicites, en minuscules, avec des tirets bas (prix_unitaire plutôt que pu). Un nom ne commence jamais par un chiffre et ne contient pas d’espace.

Les opérateurs arithmétiques

a, b = 17, 5
print(a + b)   # 22  addition
print(a - b)   # 12  soustraction
print(a * b)   # 85  multiplication
print(a / b)   # 3.4 division réelle : le résultat est toujours un float
print(a // b)  # 3   division entière (quotient)
print(a % b)   # 2   reste de la division (modulo)
print(a ** 2)  # 289 puissance

Le modulo % est très utile : n % 2 == 0 signifie « n est pair ». Attention aussi aux nombres décimaux : 0.1 + 0.2 donne 0.30000000000000004, car les float sont stockés en binaire. Pour afficher un montant, on arrondit avec round(valeur, 2) ou avec un format d’affichage.

Convertir les types

Les données qui arrivent de l’extérieur (saisie avec input(), fichier texte, formulaire) sont presque toujours des chaînes. Additionner deux chaînes les colle bout à bout au lieu de les additionner :

quantite = "3"
print(quantite + "2")        # "32" : concaténation de textes
print(int(quantite) + 2)     # 5    : conversion en entier puis addition
print(float("19.90") * 2)    # 39.8
print(str(42) + " ans")      # "42 ans"

Si la conversion est impossible (int("abc")), Python lève une erreur ValueError. Nous verrons plus tard comment la gérer.

Les f-strings pour afficher proprement

Une f-string est une chaîne précédée de f. Tout ce qui est entre accolades est évalué puis inséré :

produit = "clavier"
prix = 49.9
quantite = 3
total = prix * quantite
print(f"{quantite} x {produit} = {total:.2f} €")
# 3 x clavier = 149.70 €

Le format :.2f impose deux décimales. On peut aussi écrire {total:,.2f} pour un séparateur de milliers, ou {taux:.1%} pour afficher un pourcentage.

À retenir

  • = affecte une valeur, == compare deux valeurs.
  • type() révèle le type d’une valeur.
  • Convertissez toujours les textes en nombres avant de calculer.
  • Les f-strings sont la manière moderne et lisible de construire du texte.

Exercices

Les solutions et les tests restent sur le serveur. Dans l'espace étudiant, ton code est exécuté et corrigé, et le tuteur donne des indices avant la solution.

  1. CodeDifficulté 1Python dans le navigateur2 indices

    Calculer un total TTC

    Les variables prix_ht et quantite_txt sont fournies. quantite_txt est une chaîne.

    1. Convertissez quantite_txt en entier dans une variable quantite.
    2. Calculez total_ttc = prix_ht × quantite × 1.2, arrondi à 2 décimales avec round().
    3. Créez une chaîne message de la forme "Total : 59.88 €" avec une f-string (2 décimales).
    prix_ht = 24.95
    quantite_txt = "2"
    
    # 1. Conversion
    quantite = ...
    
    # 2. Calcul
    total_ttc = ...
    
    # 3. Message
    message = ...
    print(message)
  2. CodeDifficulté 2Python dans le navigateur2 indices

    Division entière et reste

    Un entrepôt reçoit nb_articles articles qu’il range dans des cartons de capacite articles.

    Calculez :

    • cartons_pleins : le nombre de cartons entièrement remplis ;
    • reste : le nombre d’articles qui restent hors carton ;
    • est_pair : un booléen qui vaut True si nb_articles est pair.
    nb_articles = 257
    capacite = 12
    
    cartons_pleins = ...
    reste = ...
    est_pair = ...
  3. QCMDifficulté 11 indice

    Type d'une division

    Quel est le type du résultat de 10 / 2 en Python ?

    • int
    • float
    • str
    • bool

Quiz de fin de leçon

  1. Que vaut "5" + "5" ?

    • 10
    • "55"
    • Une erreur
  2. Quelle instruction affiche Prix : 3.50 pour p = 3.5 ?

    • print("Prix : {p:.2f}")
    • print(f"Prix : {p:.2f}")
    • print(f"Prix : p:.2f")
  3. Que vaut 17 % 5 ?

    • 3
    • 3.4
    • 2

La suite du cours

  1. Conditions : if, elif, else15 min
  2. Listes et boucles20 min
  3. Dictionnaires, tuples et ensembles20 min
  4. Fonctions et gestion des erreurs20 min

Python fondamentaux · Débutant · 2 h 30