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
Libérer: 2024-11-28 17:35:20
original
262 Les gens l'ont consulté

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]))
Copier après la connexion

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))
Copier après la connexion

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)}
Copier après la connexion

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))
Copier après la connexion

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))
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal