Convertir une liste en dictionnaire en Python

Convertir une liste en dictionnaire en Python n’est pas si difficile.

Voyons différentes manières de convertir une liste en dictionnaire.

Introduction

Avant de vous lancer dans le didacticiel, voyons un exemple de conversion d’une liste en dictionnaire. Nous aurons une liste de tuples (chaque tuple est constitué de deux éléments) ou juste une liste d’éléments. Nous prendrons les deux entrées et les convertirons en dictionnaires.

Exemples:

Dans l’exemple suivant, nous avons pris une liste de tuples et l’avons convertie en dictionnaire. Nous avons pris le premier élément de chaque tuple comme clé et le deuxième élément comme valeur pour le dictionnaire.

Entrée : list_one = [(‘a’, ‘A’), (‘b’, ‘B’), (‘c’, ‘C’)]

Sortie : {‘a’ : ‘A’, ‘b’ : ‘B’, ‘c’ : ‘C’}

Dans l’exemple suivant, nous avons pris une liste d’éléments et l’avons convertie en un dictionnaire avec des éléments alternatifs comme clé et valeur. Nous donnerons null à la clé s’il n’y a plus d’élément pour elle comme clé (si la liste a un nombre impair d’éléments).

Entrée : list_one = [‘a’, ‘A’, ‘b’, ‘B’, ‘c’, ‘C’, ‘d’]

Sortie :{‘a’ : ‘A’, ‘b’ : ‘B’, ‘c’ : ‘C’, ‘d’ : aucun}

Nous avons vu l’objectif du tutoriel. Et nous discuterons des deux exemples de différentes manières. Commençons par le premier exemple.

Liste des tuples – Dictionnaire

Voyons comment convertir une liste de tuples en dictionnaire. Vous pouvez essayer d’écrire le code à l’aide des étapes suivantes.

  • Initialisez la liste des tuples avec des données factices comme indiqué dans les exemples ci-dessus (assurez-vous que chaque tuple de la liste contient exactement deux éléments).
  • Passez la liste des tuples à la méthode dict et elle stocke le résultat dans une nouvelle variable.
  • Ça y est, nous avons converti une liste de tuples en un dictionnaire avec une seule ligne de code.
# list of tuples
list_of_tuples = [('a', 'A'), ('b', 'B'), ('c', 'C')]

# converting to dictionary
list_of_tuples_dict = dict(list_of_tuples)

# printing the result dict
print(list_of_tuples_dict)

Vous pouvez tester la sortie du programme ci-dessus en l’exécutant. Vous obtiendrez le résultat comme nous le voyons dans les exemples.

Liste – Dictionnaire

Nous avons vu comment convertir une liste de tuples en un dictionnaire et c’est une chose simple en Python. Dans cette section, nous verrons comment convertir une simple liste en dictionnaire.

Voir le deuxième exemple de la première section du didacticiel pour plus de clarté.

Suivez les étapes ci-dessous pour écrire le code du deuxième exemple.

Nous avons rempli la valeur par défaut comme None pour l’élément qui n’aura aucune valeur (une liste contenant un nombre impair d’éléments). Pour cela, nous devons utiliser une méthode appelée zip_longest du module itertools.

  • Importez le module itertools et initialisez une liste avec un nombre impair d’éléments donnés dans les exemples.
  • Convertissez la liste en itérable pour éviter la répétition des paires clé/valeur dans la méthode zip_longest.
  • Maintenant, passez l’itérable à la méthode zip_longest et fillvalue comme None. Il renverra un objet zip.
    • Nous devons passer iterable deux fois car il prend la clé et la valeur des deux itérables. Dans notre cas, les clés et les valeurs sont dans le même itérable. Donc, nous devons le passer deux fois avant fillvalue.
  • Convertissez l’objet dans le dictionnaire Python en utilisant la méthode dict.
  • Imprimez le résultat.
# importing the module
import itertools

# plain list with odd number of elements
plain_list = ['a', 'A', 'b', 'B', 'c', 'C', 'd']

# converting it to iterable to avoid repetition
plain_list_iter = iter(plain_list)

# converting the plain_list to dict
plain_list_dict_object = itertools.zip_longest(plain_list_iter, plain_list_iter, fillvalue=None)

# convert the zip_longest object to dict using `dict`
plain_list_dict = dict(plain_list_dict_object)

# print it
print(plain_list_dict)

Vous pouvez donner à la fillvalue ce que vous voulez. Essayez différentes choses avec. Et exécutez le code pour voir si nous obtenons ou non la sortie exacte mentionnée dans l’exemple.

Conclusion

J’espère que vous avez aimé convertir la liste en dictionnaire. Rendez-vous dans le prochain tutoriel.

Ensuite, apprenez à aplatir la liste en Python.

Bon codage 🙂

Vous avez apprécié la lecture de l’article ? Que diriez-vous de partager avec le monde ?

x