0Pricing
Python Academy · Leçon

Compréhensions de dictionnaires

Créez des dictionnaires de manière concise avec la syntaxe des compréhensions.

Compréhensions de dictionnaires est une leçon Python Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Python Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Python Academy comprend 4 leçons au total.

Introduction

Les compréhensions de dictionnaire permettent de construire des dictionnaires à partir de n’importe quel itérable, de manière concise.

Compréhension de dictionnaire de base

`{k: v for k, v in items}` est la forme de base. Exemple : `{x: x**2 for x in range(5)}` associe les nombres à leurs carrés.
squares = {x: x**2 for x in range(5)}
print(squares)

Avec une condition

Ajoutez `if` à la fin pour filtrer : `{x: x**2 for x in range(10) if x % 2 == 0}` ne conserve que les nombres pairs.
evens = {x: x**2 for x in range(10) if x % 2 == 0}
print(evens)

Inverser un dictionnaire

`{v: k for k, v in d.items()}` échange les clés et les valeurs. Cela ne fonctionne que si toutes les valeurs sont uniques et hachables.
d = {'a': 1, 'b': 2, 'c': 3}
inverted = {v: k for k, v in d.items()}
print(inverted)

À partir de deux listes

`{k: v for k, v in zip(keys, values)}` est la manière la plus claire de construire un dictionnaire à partir de listes parallèles.
keys = ['name', 'age']
vals = ['Alice', 30]
d = {k: v for k, v in zip(keys, vals)}
print(d)

Transformer les valeurs

Appliquez une fonction à toutes les valeurs : `{k: v.upper() for k, v in d.items()}` convertit toutes les valeurs textuelles en majuscules.
d = {'a': 'hello', 'b': 'world'}
result = {k: v.upper() for k, v in d.items()}
print(result)

Compréhension de dictionnaire imbriquée

`{outer_k: {inner_k: inner_v} ...}` imbrique des compréhensions. Veillez à conserver une bonne lisibilité : si la logique est complexe, utilisez une boucle classique.
nested = {i: {j: i*j for j in range(3)} for i in range(3)}
print(nested)

Regrouper avec une compréhension

Regroupez les éléments selon une propriété : `{k: [v for v in values if condition(v, k)] for k in keys}`
words = ['apple', 'art', 'banana', 'blueberry']
grouped = {ch: [w for w in words if w.startswith(ch)] for ch in 'ab'}
print(grouped)

Fusion et remplacement

`{**d1, **d2}` fusionne deux dictionnaires d’une manière proche d’une compréhension. En cas de clés en double, les valeurs de `d2` sont conservées.
d1 = {'a': 1, 'b': 2}
d2 = {'b': 99, 'c': 3}
merged = {**d1, **d2}
print(merged)

Dictionnaire ou `defaultdict`

Les compréhensions créent des dictionnaires classiques. Utilisez `defaultdict` lorsque vous avez besoin d’initialiser automatiquement les clés absentes.
from collections import defaultdict
d = defaultdict(list)
for w in ['apple', 'art', 'banana']:
    d[w[0]].append(w)
print(dict(d))

Performances

Les compréhensions de dictionnaire sont généralement plus rapides que des constructions équivalentes avec une boucle `for`, car l’interpréteur les optimise en interne.
# Comprehension
squares = {x: x**2 for x in range(1000)}
print(len(squares))

Vérification rapide

Que fait `{v: k for k, v in d.items()}` ?

Récapitulatif

Compréhensions de dictionnaire : `{k: v for ... if ...}`. Utilisez-les pour inverser un dictionnaire, transformer des valeurs, regrouper et filtrer. Combinez-les avec `zip()` pour des listes parallèles.

Continuer

Excellent travail ! Passez à la leçon suivante pour continuer à développer vos compétences.

Questions Fréquemment Posées

La leçon « Compréhensions de dictionnaires » est-elle gratuite ?

Oui — le texte complet de « Compréhensions de dictionnaires » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Python Academy, passe à CoddyKit PRO. Le cours Python Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Compréhensions de dictionnaires » ?

Créez des dictionnaires de manière concise avec la syntaxe des compréhensions. Tu pratiques Python Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Python Academy ?

Aucune expérience préalable n'est requise. Python Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Compréhensions de dictionnaires » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Python Academy ?

Oui. Chaque leçon Python Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Bases des dictionnaires
  2. Méthodes des dictionnaires
  3. Ensembles et opérations sur les ensembles
  4. Compréhensions de dictionnaires
← Retour à Python Academy