Maison  >  Article  >  développement back-end  >  Comment entrelacer plusieurs listes en Python ?

Comment entrelacer plusieurs listes en Python ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-20 21:38:15963parcourir

How to Interleave Multiple Lists in Python?

Entrelacement de plusieurs listes : une approche pythonique

En Python, entrelacer des listes de même longueur est une tâche courante. Prenons l'exemple de deux listes : [1,2,3] et [10,20,30]. Notre objectif est de les transformer en [1,10,2,20,3,30].

Pour une solution concise, nous pouvons utiliser une compréhension de liste avec la fonction zip. La fonction zip prend deux listes et crée une liste de paires, où chaque paire contient un élément de chaque liste. Nous parcourons ces paires et créons une nouvelle liste en incluant tous les éléments des paires. Voici le code :

l1 = [1, 2, 3]
l2 = [10, 20, 30]
result = [val for pair in zip(l1, l2) for val in pair]
print(result)  # Output: [1, 10, 2, 20, 3, 30]

Cette approche fonctionne efficacement pour entrelacer des paires de listes. Cependant, si nous avons plusieurs listes à entrelacer, disons N listes, nous pouvons étendre cette solution comme suit :

lists = [l1, l2, ...]  # Assume lists contains N lists
result = [val for tup in zip(*lists) for val in tup]
print(result)

En utilisant l'opérateur * avant les listes dans la fonction zip, nous pouvons décompresser la liste des listes en arguments individuels, nous permettant d'entrelacer toutes les listes simultanément. Cette technique s'avère utile pour gérer plusieurs listes de longueurs arbitraires.

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