Lorsqu'ils travaillent avec deux listes, les utilisateurs rencontrent souvent le besoin de les combiner d'une manière spécifique. L'un de ces résultats souhaités est d'entrelacer les éléments des listes selon un motif alterné. Cela pose la question de savoir comment réaliser cette combinaison le plus efficacement et de manière pythonique.
Approches conventionnelles
Une approche simple consiste à utiliser une boucle pour parcourir les listes, en ajoutant des éléments de la première liste aux indices pairs et éléments de la deuxième liste aux indices impairs. Cependant, cette méthode manque d'élégance et d'efficacité.
La tranche pythonique
Une méthode plus concise et pythonique exploite le découpage et l'affectation de listes. En créant une liste de résultats de la longueur combinée des listes d'entrée, nous pouvons découper la liste de résultats par foulées de 2. Les éléments à index pair sont ensuite affectés à la première liste et les éléments à index impair sont affectés à la deuxième liste. .
Considérons l'exemple :
list1 = ['f', 'o', 'o'] list2 = ['hello', 'world'] result = [None]*(len(list1)+len(list2)) result[::2] = list1 result[1::2] = list2
La liste 'résultat' résultante sera :
['f', 'hello', 'o', 'world', 'o']
Cette méthode est non seulement concis mais aussi efficace, éliminant le besoin de boucles et de manipulation d'index. Il démontre la puissance des capacités de découpage de Python pour la manipulation de listes.
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!