Exercices Structures de données Dict comprehension
🎉

Bravo!

Intermédiaire 🧠 Fondamentaux 20 XP 0 personnes ont réussi

Dict comprehension

Tu connais probablement les list comprehensions : [x * 2 for x in range(5)] donne [0, 2, 4, 6, 8]. Les dict comprehensions fonctionnent de la même manière, mais produisent un dictionnaire.

La syntaxe est :
{cle: valeur for élément in iterable}

Par exemple :
{mot: len(mot) for mot in ['chat', 'souris']} donne {'chat': 4, 'souris': 6}
{x: x**2 for x in range(4)} donne {0: 0, 1: 1, 2: 4, 3: 9}

Tu peux aussi ajouter un filtre avec if :
{x: x**2 for x in range(6) if x % 2 == 0} donne {0: 0, 2: 4, 4: 16}

Écris une fonction index_mots(phrase) qui prend une phrase (string) et renvoie un dictionnaire ou chaque clé est un mot et chaque valeur est la position du mot dans la phrase (en partant de 0).

Exemple :
index_mots('le chat dort') renvoie {'le': 0, 'chat': 1, 'dort': 2}

Tests (4/4)

Phrase simple
assert index_mots('le chat dort') == {'le': 0, 'chat': 1, 'dort': 2}
Un seul mot
assert index_mots('bonjour') == {'bonjour': 0}
Phrase vide
assert index_mots('') == {}
Quatre mots
assert index_mots('a b c d') == {'a': 0, 'b': 1, 'c': 2, 'd': 3}

Indices (3 disponibles)

solution.py