Variables et types en Python | Mathématiques Seconde

Introduction

VARIABLES ET TYPES EN PYTHON
Concepts Fondamentaux de la Programmation

Découvrez les variables et les types de données en Python

Variables
Types
Données

Introduction aux variables

Qu'est-ce qu'une variable ?

CONCEPT FONDAMENTAL DE LA PROGRAMMATION
Définition

Une variable est un espace de stockage dans la mémoire de l'ordinateur qui contient une valeur. En Python, une variable est comme une boîte dans laquelle vous pouvez ranger une valeur et lui donner un nom.

Imaginez une variable comme un tiroir étiqueté dans lequel vous pouvez placer et retrouver des objets (valeurs). Le nom de la variable est l'étiquette du tiroir.

Caractéristiques des variables :
  • 1 Ont un nom unique dans leur portée
  • 2 Stockent une valeur d'un certain type
  • 3 Peuvent être modifiées durant l'exécution du programme
  • 4 Doivent respecter certaines règles de nommage
Création d'une variable

En Python, créer une variable est très simple : il suffit de lui attribuer une valeur avec le signe égal (=).

nom = "Alice"
age = 16
moyenne = 14.5

Règles de nommage

Nommer ses variables

RÈGLES ET CONVENTIONS DE NOMMAGE
Règles obligatoires
  • Les noms de variables ne peuvent contenir que des lettres (a-z, A-Z), des chiffres (0-9) et des tirets bas (_)
  • Ne peuvent pas commencer par un chiffre
  • Ne doivent pas être des mots-clés réservés (if, else, while, for, etc.)
  • Sont sensibles à la casse (nom et Nom sont différents)
# Noms valides
prenom = "Marie"
note_math = 15.5
age_utilisateur = 17
est_majeur = True

# Noms invalides
# 1ere_note = 15      # Commence par un chiffre
# note-math = 14      # Contient un trait d'union
# if = 10             # Mot-clé réservé
CONVENTIONS DE NOMMAGE
Bonnes pratiques
  • Utiliser des noms descriptifs qui indiquent clairement ce que contient la variable
  • Utiliser le snake_case (minuscules avec underscores) pour les noms composés
  • Éviter les abréviations incompréhensibles
  • Utiliser des noms en français dans un contexte francophone
# Bonnes pratiques
nom_complet = "Jean Dupont"
date_naissance = "2007-05-15"
nombre_eleves = 28

# Moins bonnes pratiques
# n = "Jean Dupont"      # Trop court
# dateN = "2007-05-15"   # Abréviation peu claire
# nb = 28               # Trop vague

Types de base

Types de données fondamentaux

TYPES DE BASE EN PYTHON
Type Nom Description Exemple
str Chaîne de caractères Suite de caractères "Bonjour", 'Python'
int Entier Nombres sans décimales 42, -17, 0
float Décimal Nombres avec virgule 3.14, -2.5, 0.0
bool Booléen Valeur vraie/faux True, False
EXEMPLES PRATIQUES
Différents types en action
# Chaîne de caractères
prenom = "Sophie"
ville = 'Paris'

# Nombre entier
age = 16
nb_classes = 3

# Nombre décimal
moyenne = 14.75
pi = 3.14159

# Booléen
est_boursier = True
a_redouble = False

Type string (str)

Chaînes de caractères

LES CHAÎNES DE CARACTÈRES EN PYTHON
Création de chaînes

Les chaînes de caractères sont des suites de caractères entourées de guillemets simples ou doubles :

message = "Bonjour le monde"
prenom = 'Alice'
phrase = "C'est une belle journée"

# Chaînes multi-lignes
texte_long = """Ceci est un texte
sur plusieurs lignes"""
OPÉRATIONS SUR LES CHAÎNES
Concaténation et opérations
nom = "Jean"
prenom = "Dupont"

# Concaténation (assemblage)
nom_complet = prenom + " " + nom
print(nom_complet)  # Affiche: Jean Dupont

# Longueur d'une chaîne
longueur = len(nom_complet)
print(longueur)     # Affiche: 11

# Accès à un caractère
premiere_lettre = nom_complet[0]  # 'J'

Types numériques

Entiers et décimaux

TYPES NUMÉRIQUES EN PYTHON
Type entier (int)

Les entiers sont des nombres sans partie décimale :

age = 16
nombre_eleves = 28
annee = 2023
temperature = -5  # Entier négatif

# Opérations arithmétiques
somme = age + 2
difference = age - 5
produit = age * 2
quotient = age // 3  # Division entière
TYPE DÉCIMAL (FLOAT)
Nombres avec virgule

Les floats représentent les nombres avec une virgule flottante :

moyenne = 14.75
pi = 3.14159265359
taux_conversion = 1.1
temperature = -2.5

# Opérations avec des floats
rayon = 5.0
aire_cercle = 3.14159 * rayon * rayon
print(aire_cercle)  # Affiche environ 78.54

Type booléen

Valeurs vraies/faux

LE TYPE BOOLÉEN EN PYTHON
Valeurs booléennes

Le type booléen ne peut prendre que deux valeurs : True (vrai) ou False (faux) :

est_majeur = True
a_permis = False
est_boursier = True
a_redouble = False
OPÉRATIONS LOGIQUES
Comparaisons et logique

Les booléens résultent souvent de comparaisons :

age = 18
moyenne = 12.5

# Comparaisons
est_majeur = age >= 18           # True
admis = moyenne >= 10.0         # True
est_premier = age == 18          # True
est_different = age != 17       # True

# Opérateurs logiques
peut_conduire = est_majeur and a_permis    # False
doit_travailler = est_majeur or a_deja_travaille  # True si l'une est vraie

Conversion de types

Transformer les types

CONVERTIR ENTRE DIFFÉRENTS TYPES
Fonctions de conversion

Python permet de convertir une valeur d'un type à un autre :

# Chaîne vers entier
chaine_nombre = "42"
nombre_entier = int(chaine_nombre)  # 42

# Chaîne vers décimal
chaine_decimal = "3.14"
nombre_decimal = float(chaine_decimal)  # 3.14

# Entier vers chaîne
age = 16
chaine_age = str(age)  # "16"

# Décimal vers entier (troncature)
decimal = 15.7
entier = int(decimal)  # 15
ATTENTION AUX ERREURS
Cas problématiques

La conversion n'est pas toujours possible :

# Cela provoque une erreur :
# nombre = int("bonjour")  # ValueError!

# Mais cela est possible :
nombre = int(float("3.7"))  # 3 (converti en float puis en int)

# Conversion booléenne
bool(0)        # False
bool(1)        # True
bool("")       # False
bool("test")   # True

Exemple complet

Programme de gestion d'étudiant

APPLICATION DES CONCEPTS VUS JUSQU'ICI
Programme complet
# Programme de gestion d'un étudiant

# Informations personnelles (chaînes)
nom = "Martin"
prenom = "Luc"
adresse = "123 Rue de la Paix"

# Informations numériques
age = 17              # Entier
moyenne = 13.8        # Décimal
annee_naissance = 2006  # Entier

# Statuts (booléens)
est_boursier = True
a_permis = False
admis = moyenne >= 10.0

# Affichage des informations
print("Informations de l'étudiant :")
print(f"Nom : {prenom} {nom}")
print(f"Âge : {age} ans")
print(f"Moyenne : {moyenne}")
print(f"Boursier : {est_boursier}")
print(f"Admis : {admis}")
ANALYSE DU PROGRAMME
Types utilisés
  • str : nom, prenom, adresse
  • int : age, annee_naissance
  • float : moyenne
  • bool : est_boursier, a_permis, admis

Exercice 1

Variables et types de base

EXERCICE : INFORMATIONS PERSONNELLES
Énoncé

Créez un programme qui :

  • Déclare des variables pour stocker votre prénom, nom, âge, taille, et statut scolaire
  • Utilise les bons types pour chaque information
  • Affiche toutes ces informations de manière organisée
INDICATIONS
Types appropriés
  • Prénom et nom : str (chaîne de caractères)
  • Âge : int (nombre entier)
  • Taille : float (nombre décimal)
  • Statut scolaire : bool (vrai/faux)

Solution exercice 1

Correction détaillée

CORRECTION : INFORMATIONS PERSONNELLES
Code solution
# Informations personnelles
prenom = "Emma"
nom = "Dubois"
age = 16
taille = 1.65  # en mètres
est_lyceen = True

# Affichage des informations
print("=== Informations personnelles ===")
print(f"Prénom : {prenom}")
print(f"Nom : {nom}")
print(f"Âge : {age} ans")
print(f"Taille : {taille} m")
print(f"Lycéen : {est_lyceen}")

# Affichage des types
print()
print("=== Types des variables ===")
print(f"Type de prenom : {type(prenom)}")
print(f"Type de age : {type(age)}")
print(f"Type de taille : {type(taille)}")
print(f"Type de est_lyceen : {type(est_lyceen)}")
ANALYSE DE LA SOLUTION
Explication ligne par ligne
  • Lignes 2-5: Déclaration des variables avec les types appropriés
  • Lignes 8-12: Affichage des informations avec f-strings
  • Lignes 15-19: Affichage des types de chaque variable avec la fonction type()
Sortie du programme :
=== Informations personnelles ===
Prénom : Emma
Nom : Dubois
Âge : 16 ans
Taille : 1.65 m
Lycéen : True

=== Types des variables ===
Type de prenom : <class 'str'>
Type de age : <class 'int'>
Type de taille : <class 'float'>
Type de est_lyceen : <class 'bool'>

Exercice 2

Conversion de types

EXERCICE : CONVERSION ET CALCULS
Énoncé

Écrivez un programme qui :

  • Demande à l'utilisateur son âge en tant que chaîne de caractères
  • Convertit cette chaîne en nombre entier
  • Calcule l'année de naissance approximative
  • Affiche le résultat
INDICATIONS
Étapes à suivre
  • Utilisez input() pour demander l'âge
  • Utilisez int() pour convertir la chaîne en entier
  • Supposez que l'année actuelle est 2023
  • Calculez l'année de naissance : année_actuelle - âge
  • Affichez le résultat avec print()

Solution exercice 2

Correction détaillée

CORRECTION : CONVERSION ET CALCULS
Code solution
# Programme de calcul de l'année de naissance

# Demande de l'âge à l'utilisateur
age_chaine = input("Quel est votre âge ? ")

# Conversion de la chaîne en entier
age = int(age_chaine)

# Supposition de l'année actuelle
annee_actuelle = 2023

# Calcul de l'année de naissance
annee_naissance = annee_actuelle - age

# Affichage du résultat
print()
print(f"Vous êtes né(e) vers {annee_naissance}")
print(f"Type de l'âge : {type(age)}")
ANALYSE DE LA SOLUTION
Explication ligne par ligne
  • Ligne 4: Demande à l'utilisateur d'entrer son âge (renvoie une chaîne)
  • Ligne 7: Conversion de la chaîne en entier avec int()
  • Ligne 10: Définition de l'année actuelle
  • Ligne 13: Calcul de l'année de naissance
  • Lignes 16-17: Affichage du résultat et du type de la variable age
Exemple d'exécution :
Quel est votre âge ? 16

Vous êtes né(e) vers 2007
Type de l'âge : <class 'int'>

Exercice 3

Gestion de notes

EXERCICE : CALCUL DE MOYENNE AVEC TYPES
Énoncé

Écrivez un programme qui :

  • Demande à l'utilisateur 3 notes (mathématiques, français, anglais)
  • Stocke ces notes dans des variables de type float
  • Calcule la moyenne des 3 notes
  • Détermine si l'étudiant est admis (moyenne ≥ 10)
  • Affiche les résultats
INDICATIONS
Étapes à suivre
  • Utilisez input() et float() pour chaque note
  • Calculez la moyenne : (note1 + note2 + note3) / 3
  • Utilisez une comparaison pour déterminer l'admission
  • Affichez tous les résultats

Solution exercice 3

Correction détaillée

CORRECTION : GESTION DE NOTES
Code solution
# Programme de gestion de notes

# Demande des notes
note_math = float(input("Note de mathématiques : "))
note_francais = float(input("Note de français : "))
note_anglais = float(input("Note d'anglais : "))

# Calcul de la moyenne
moyenne = (note_math + note_francais + note_anglais) / 3

# Détermination de l'admission
est_admis = moyenne >= 10.0

# Affichage des résultats
print()
print("=== Résultats ===")
print(f"Notes : Math {note_math}, Français {note_francais}, Anglais {note_anglais}")
print(f"Moyenne : {moyenne:.2f}")  # Arrondi à 2 décimales
print(f"Admis : {est_admis}")

# Affichage des types
print()
print("=== Types des variables ===")
print(f"Type de note_math : {type(note_math)}")
print(f"Type de est_admis : {type(est_admis)}")
ANALYSE DE LA SOLUTION
Explication ligne par ligne
  • Lignes 4-6: Demande des 3 notes et conversion en float
  • Ligne 9: Calcul de la moyenne
  • Ligne 12: Détermination de l'admission (booléen)
  • Lignes 15-19: Affichage des résultats
  • Lignes 22-24: Affichage des types des variables
Exemple d'exécution :
Note de mathématiques : 14.5
Note de français : 12.0
Note d'anglais : 11.5

=== Résultats ===
Notes : Math 14.5, Français 12.0, Anglais 11.5
Moyenne : 12.67
Admis : True

=== Types des variables ===
Type de note_math : <class 'float'>
Type de est_admis : <class 'bool'>

Résumé

Points clés

CONCEPTS FONDAMENTAUX À RETENIR
Variables
  • Sont des espaces de stockage nommés dans la mémoire
  • Ont des noms uniques et respectent des règles de nommage
  • Peuvent être modifiées durant l'exécution
  • Doivent être descriptives et en snake_case
Types de base
  • str : Chaînes de caractères ("Bonjour")
  • int : Nombres entiers (42, -5)
  • float : Nombres décimaux (3.14, -2.5)
  • bool : Booléens (True, False)
Conversion de types
  • int() : Convertit en entier
  • float() : Convertit en décimal
  • str() : Convertit en chaîne
  • bool() : Convertit en booléen
Maîtrisez ces concepts pour construire des programmes Python solides !

Conclusion

Félicitations !

FÉLICITATIONS !
MAÎTRISE DES VARIABLES ET TYPES
Vous comprenez maintenant les fondements de la programmation Python !

Continuez à pratiquer pour renforcer vos compétences

Variables
Types
Pratique