Optimisation

Résolu/Fermé
0-Kzami Messages postés 15 Date d'inscription samedi 28 décembre 2019 Statut Membre Dernière intervention 9 février 2020 - 8 févr. 2020 à 18:23
0-Kzami Messages postés 15 Date d'inscription samedi 28 décembre 2019 Statut Membre Dernière intervention 9 février 2020 - 9 févr. 2020 à 14:30
Bonjour,
J'aimerais optimiser ce code avec des
for
, mais je ne vois pas du tout comment faire. Est-ce que vous pouvez m'aider s'il-vous-plaît ?
Merci beaucoup !

Le code :
a[mot[0]] = {mot[1]: {}}
a[mot[0]][mot[1]] = {mot[2]: {}}
a[mot[0]][mot[1]][mot[2]] = {mot[3]: {}}
a[mot[0]][mot[1]][mot[2]][mot[3]] = {mot[4]: {}}

2 réponses

Bonsoir,

Pour faire ça dans une boucle, il faut simplement changer la référence du dictionnaire en cours.

a = {}
current_dict = a
for i in range(1, len(mot)):
    current_dict[mot[i - 1]] = {mot[i]: {}}
    current_dict = current_dict[mot[i - 1]]
0
0-Kzami Messages postés 15 Date d'inscription samedi 28 décembre 2019 Statut Membre Dernière intervention 9 février 2020
9 févr. 2020 à 14:30
Merci,
En y réfléchissant à fond de mon côté, j'ai trouvé comment faire, et j'ai procédé avec des fonctions récursives.
0