À partir d’une liste, comment écrire un programme en Python pour convertir la liste donnée en dictionnaire de sorte que tous les éléments impairs aient la clé et que les éléments pairs aient la valeur. Comme le dictionnaire python n’est pas ordonné, la sortie peut être dans n’importe quel ordre.
Exemples :
Input : ['a', 1, 'b', 2, 'c', 3] Output : {'a': 1, 'b': 2, 'c': 3} Input : ['Paris', 71, 'Rouen', 42] Output : {'Paris': 71, 'Rouen': 42}
Méthode n°1 : compréhension de liste
Pour convertir une liste en dictionnaire, on peut utiliser la compréhension de liste et faire une paire clé:valeur d’éléments consécutifs. Enfin, on peut taper la liste en dict type.
def Convert(lst): res_dct = {lst[i]: lst[i + 1] for i in range(0, len(lst), 2)} return res_dct lst = ['a', 1, 'b', 2, 'c', 3] print(Convert(lst))
{'a': 1, 'b': 2, 'c': 3}
Pour un aperçu, 👉 cliquez sur une couverture pour feuilleter le livre sur Amazon 📚.
Méthode n°2 : Utilisation de la méthode zip()
Créez d’abord un itérateur et initialisez-le à la variable “it”. Ensuite, utilisez la méthode du zip, pour zipper les clés et les valeurs ensemble. Enfin, vous pouvez le transformer en type dict.
def Convert(a): it = iter(a) res_dct = dict(zip(it, it)) return res_dct lst = ['a', 1, 'b', 2, 'c', 3] print(Convert(lst))
{'a': 1, 'b': 2, 'c': 3}