💻maths

Variables Python NSI : Guide complet pour lycéens

12 juin 2026 7 min de lecture

Pourquoi les variables et les types sont essentiels en NSI

En NSI, tout commence par les variables. Elles sont comme des boîtes qui stockent des informations. Comprendre comment les créer, les utiliser et les typer est la base de tous les programmes que tu écriras. Que tu sois en Seconde SNT ou en Terminale spé NSI, maîtriser les variables Python te permettra de coder avec confiance et d'éviter des erreurs frustrantes.

Qu'est-ce qu'une variable en Python ?

Une variable en Python est un nom qui fait référence à une valeur stockée en mémoire. Tu n'as pas besoin de déclarer son type à l'avance : Python le déduit automatiquement lors de l'affectation. Par exemple :

age = 17
nom = "Alice"
pi = 3.14
est_lyceen = True

Ici, age est un entier (int), nom une chaîne de caractères (str), pi un nombre flottant (float) et est_lyceen un booléen (bool). Python affecte automatiquement le type en fonction de la valeur.

Les types de base en Python pour le lycée

Au programme de NSI, tu rencontreras principalement ces types :

  • int : nombres entiers (ex: 42, -7)
  • float : nombres à virgule flottante (ex: 3.14, -0.5)
  • str : chaînes de caractères (ex: "Bonjour", 'NSI')
  • bool : booléens (True ou False)
  • list : listes (ex: [1, 2, 3])
  • tuple : tuples immuables (ex: (1, 2))
  • dict : dictionnaires (ex: {"cle": "valeur"})

Python est un langage à typage dynamique : le type d'une variable peut changer si on lui affecte une nouvelle valeur d'un type différent. Exemple :

x = 10       # x est un int
x = "dix"    # x devient une str

Attention : cela peut être source d'erreurs si tu ne suis pas bien le flux de ton programme.

Affectation et réaffectation : les règles à connaître

L'opérateur d'affectation est le =. Il ne faut pas le confondre avec le test d'égalité ==. Exemple :

a = 5        # affectation
b = a + 2    # b vaut 7
a = a + 1    # a devient 6

Une variable doit être définie avant d'être utilisée. Si tu écris print(c) sans avoir affecté c, Python lèvera une erreur NameError. Pour éviter ça, pense à initialiser toutes tes variables.

Les erreurs fréquentes avec les variables

Voici les pièges classiques que tu rencontreras en NSI :

  • NameError : utiliser une variable non définie.
  • TypeError : mélanger des types incompatibles (ex: "âge : " + 17).
  • IndentationError : mauvaise indentation dans les blocs, mais ça concerne la structure.

Pour en savoir plus sur les erreurs, consulte notre page dédiée : Les erreurs Python expliquées pour les lycéens.

Comment choisir le bon type pour ta variable ?

Le choix du type dépend de la donnée que tu veux manipuler. Voici un guide simple :

  • Pour compter ou indicer, utilise int.
  • Pour des mesures ou des divisions, utilise float.
  • Pour du texte, utilise str.
  • Pour une condition, utilise bool.
  • Pour une collection d'éléments, utilise list ou tuple.

Exemple concret : un programme qui calcule la moyenne d'une liste de notes :

notes = [12, 15, 8, 19]  # liste d'entiers
somme = sum(notes)         # int
moyenne = somme / len(notes)  # float
print("Moyenne :", moyenne)

Cas pratique : un petit jeu de devinette

Mettons en pratique avec un jeu simple : l'ordinateur choisit un nombre aléatoire, et toi tu dois le deviner. Voici le code :

import random

nombre_secret = random.randint(1, 100)
essai = 0
trouve = False

while not trouve:
    proposition = int(input("Devine le nombre entre 1 et 100 : "))
    essai += 1
    if proposition == nombre_secret:
        trouve = True
        print("Bravo ! Tu as trouvé en", essai, "coups.")
    elif proposition < nombre_secret:
        print("Trop petit !")
    else:
        print("Trop grand !")

Ici, on utilise int pour l'entier saisi, bool pour la condition de victoire, et str pour les messages. C'est un bon exemple de l'utilisation des types.

Conseils pour les épreuves du bac NSI

Lors de l'épreuve pratique ou écrite, tu seras évalué sur ta capacité à manipuler correctement les variables et les types. Voici quelques astuces :

  • Nomme tes variables de manière explicite (ex: age_utilisateur plutôt que a).
  • Vérifie le type d'une variable avec type() si tu as un doute.
  • Utilise print() pour déboguer et afficher l'état de tes variables.
  • Attention aux conversions implicites : "5" + 3 provoque une erreur, il faut écrire int("5") + 3.

Pour t'entraîner, rends-toi sur notre page d'exercices NSI. Tu y trouveras des problèmes corrigés sur les variables et les types.

Révisions avant le bac

N'oublie pas de consulter les cours NSI en ligne pour revoir les bases. Et si tu as besoin d'aide supplémentaire, n'hésite pas à visiter AlloBac ou AlloLycée pour des ressources complémentaires.

Conclusion

Les variables et les types sont les fondations de tout programme Python. En les maîtrisant, tu éviteras des erreurs et tu coderas plus efficacement. Continue à t'exercer, à expérimenter et à lire du code. Tu verras, avec de la pratique, cela deviendra naturel. Bon courage pour tes études en NSI !

📚 Pour aller plus loin

Questions fréquentes

Qu'est-ce qu'une variable en Python ?

Une variable est un nom qui référence une valeur en mémoire. En Python, le type est déduit automatiquement lors de l'affectation.

Quels sont les types de base en Python pour le lycée ?

Les types principaux sont int, float, str, bool, list, tuple et dict.

Comment éviter une erreur de type en Python ?

Utilise la fonction type() pour vérifier le type, et effectue des conversions explicites avec int(), str(), etc.

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

= est l'opérateur d'affectation, == est l'opérateur de comparaison (test d'égalité).

Que faire si une variable n'est pas définie ?

Assure-toi de l'affecter avant de l'utiliser. Sinon Python lèvera une NameError.

Comment bien nommer une variable en NSI ?

Utilise des noms explicites en minuscules avec des underscores (snake_case), comme age_utilisateur.

Bravo ! Tu as lu cet article
Inscris-toi pour sauvegarder ta progression et gagner des XP
Creer mon compte
variables Python NSItypes Python lyceeNSI Pythonaffectation Pythontypes de base Python
Pixel