Python • Page 3 / Listes, dictionnaires & fonctions

Listes, dictionnaires & fonctions

Dernière étape du module Python de base : tu vas voir comment stocker plusieurs valeurs (listes, dictionnaires) et comment créer tes propres fonctions.

1. Les listes (list)

Une liste, c’est une suite ordonnée d’éléments.

noms = ["Léo", "Mia", "Nora"]
scores = [10, 15, 20]

print(noms[0])   # "Léo"
print(scores[1]) # 15

Ajouter, modifier, enlever

noms.append("Alex")     # ajoute en fin
noms[1] = "Mila"        # modifie l'élément d'index 1
del noms[0]             # supprime le premier

Dans noms = ["Ana", "Bob", "Cid"], que vaut noms[2] ?

2. Les dictionnaires (dict)

Un dictionnaire stocke des couples clé → valeur.

joueur = {
    "pseudo": "Shadow",
    "niveau": 5,
    "vip": True
}

print(joueur["pseudo"])  # Shadow
print(joueur["niveau"])  # 5

Modifier / ajouter des entrées

joueur["niveau"] = 6           # modifie
joueur["classe"] = "Guerrier"  # ajoute une nouvelle clé

Dans le dict ci-dessus, comment lire le niveau du joueur ?

3. Fonctions : créer tes propres blocs de code

Une fonction regroupe du code que tu peux réutiliser avec un nom.

def dire_bonjour():
    print("Bonjour !")

dire_bonjour()
dire_bonjour()

Fonction avec paramètres

def dire_bonjour_a(nom):
    print("Bonjour,", nom)

dire_bonjour_a("Léo")
dire_bonjour_a("Mia")

Fonction qui renvoie une valeur (return)

def addition(a, b):
    resultat = a + b
    return resultat

somme = addition(3, 4)
print(somme)  # 7
return renvoie un résultat à l’endroit où la fonction a été appelée. Sans return, la fonction renvoie None par défaut.

Que va afficher ce code ?

def triple(x):
    return x * 3

print(triple(2))

4. Mini labo : comprendre le script

Regarde ce code :

joueurs = [
    {"pseudo": "Léo", "score": 15},
    {"pseudo": "Mia", "score": 22},
    {"pseudo": "Nora", "score": 18}
]

def meilleur_joueur(liste):
    meilleur = None
    for j in liste:
        if meilleur is None or j["score"] > meilleur["score"]:
            meilleur = j
    return meilleur

top = meilleur_joueur(joueurs)
print("Top joueur :", top["pseudo"], "avec", top["score"], "points")

D’après toi, quel pseudo sera affiché si tu exécutes ce code ? (avec les valeurs actuelles)

5. Mini-projet : gestion simple de joueurs & scores

Crée un fichier players.py avec :

joueurs = [
    {"pseudo": "Léo", "score": 12},
    {"pseudo": "Mia", "score": 20}
]

def afficher_joueurs(liste):
    print("=== Joueurs ===")
    for j in liste:
        print("-", j["pseudo"], ":", j["score"], "points")

def ajouter_joueur(liste, pseudo, score):
    joueurs.append({"pseudo": pseudo, "score": score})

def meilleur_joueur(liste):
    meilleur = None
    for j in liste:
        if meilleur is None or j["score"] > meilleur["score"]:
            meilleur = j
    return meilleur

afficher_joueurs(joueurs)
top = meilleur_joueur(joueurs)
print("Top joueur :", top["pseudo"])
Tu peux adapter ça à ton univers : joueurs RP, membres d’un crew, équipes e-sport, etc.

6. Et maintenant ?

Avec les 3 pages Python, tu as vu :

C’est largement suffisant pour faire :