"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment puis-je parcourir deux listes en parallèle à Python?

Comment puis-je parcourir deux listes en parallèle à Python?

Publié le 2025-03-25
Parcourir:580

How Do I Iterate Through Two Lists in Parallel in Python?

Comment itérer à travers deux listes en parallèle

Compte tenu de deux listes, une tâche commune est de les itérer par paires. Bien que l'itération des indices soit une approche réalisable, ce n'est peut-être pas la solution la plus pythonique.

Solution Python 3

Dans Python 3, la fonction zip () renvoie un itérateur de tuples, ce qui en fait une manière efficace et concise vers iTetered à travers plusieurs itérables en parallèle. La syntaxe est:

for element_1, element_2 in zip(iterable_1, iterable_2):
    ...
for f, b in zip(foo, bar):
    print(f, b)

python 2 solution

Dans Python 2, zip () renvoie une liste de tuples, qui peut être inefficace pour les grands ensembles de données. Pour éviter de créer des variables temporaires inutiles, envisagez d'utiliser itertools.izip () pour un itérateur à la place:

import itertools
for f, b in itertools.izip(foo, bar):
    print(f, b)

Si vous le souhaitez, itertools.izip_langest () peut être utilisé pour itérer jusqu'à ce que les deux itérables soient épuisées, remplissant les valeurs manquantes avec la valeur de remplissage spécifiée (ou aucune par défaut). Simultanément.

Dans Python 3, zip () renvoie un itérateur de tuples.

    dans Python 2, zip () renvoie une liste de tuples, tandis que itertools.izip () et itertools.izip_langest () Fournir des itérateurs pour l'efficacité.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3