Maison > développement back-end > Tutoriel Python > Comment puis-je entrelacer efficacement des listes de longueurs inégales en Python ?

Comment puis-je entrelacer efficacement des listes de longueurs inégales en Python ?

Linda Hamilton
Libérer: 2024-12-08 11:59:11
original
278 Les gens l'ont consulté

How Can I Efficiently Interleave Unequal-Length Lists in Python?

Entrelacement pythonique de listes de longueurs inégales

La solution pythonique pour entrelacer deux listes de longueurs différentes est plus efficace et élégante que la boucle fournie approche. En tirant parti du découpage, la tâche peut être accomplie en une seule ligne de code.

Considérons l'exemple suivant, où la première liste contient un élément de plus que la seconde :

list1 = ['f', 'o', 'o']
list2 = ['hello', 'world']
Copier après la connexion

Le résultat souhaité est :

['f', 'hello', 'o', 'world', 'o']
Copier après la connexion

En utilisant le découpage, cela peut être obtenu comme suit :

result = [None]*(len(list1)+len(list2))
result[::2] = list1
result[1::2] = list2
Copier après la connexion

Cette approche crée une nouvelle liste, résultat, qui dispose de suffisamment d'espace pour accueillir les éléments des deux listes d'entrée. Les opérateurs de découpage [::2] et [1::2] attribuent un élément sur deux à la liste d'entrée correspondante.

Le résultat est une nouvelle liste qui alterne les éléments des deux listes d'entrée, comme vous le souhaitez. Cette méthode est plus concise, efficace et pythonique que l'approche en boucle.

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