Maison >développement back-end >Tutoriel Python >Comment puis-je convertir efficacement une liste de paires clé-valeur en un dictionnaire Python ?

Comment puis-je convertir efficacement une liste de paires clé-valeur en un dictionnaire Python ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-28 17:35:20284parcourir

How Can I Efficiently Convert a List of Key-Value Pairs into a Python Dictionary?

Conversion de paires clé-valeur dans une liste en dictionnaire

Pour convertir une liste de paires clé-valeur, où chaque élément pair représente une clé et l'élément impair suivant est la valeur correspondante, dans un dictionnaire, la méthode syntaxiquement la plus propre est :

b = dict(zip(a[::2], a[1::2]))

Ici, la fonction zip() associe les clés et les valeurs et le constructeur dict() crée le dictionnaire.

Pour optimiser les performances, lorsque vous traitez de grandes listes, considérez la méthode suivante, qui évite de créer des listes intermédiaires :

i = iter(a)
b = dict(izip(i, i))

Dans Python 3, vous pouvez également utiliser une compréhension dict :

b = {a[i]: a[i+1] for i in range(0, len(a), 2)}

Si vous utilisez iter() ou zip() dans Python 3, considérez le nature paresseuse de zip() et utilisez-le comme indiqué ci-dessous :

i = iter(a)
b = dict(zip(i, i))

Enfin, dans Python 3.8 et versions ultérieures, l'opérateur "morse" peut être utilisé pour une solution compacte sur une seule ligne :

b = dict(zip(i := iter(a), i))

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn