Maison > développement back-end > Tutoriel Python > Comment parcourir deux listes en parallèle en Python ?

Comment parcourir deux listes en parallèle en Python ?

DDD
Libérer: 2024-12-22 11:28:10
original
206 Les gens l'ont consulté

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

Comment parcourir deux listes en parallèle

Étant donné deux listes, une tâche courante consiste à les parcourir par paires. Bien que l'itération sur les 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 un moyen efficace et concis de parcourir plusieurs itérables en parallèle. La syntaxe est la suivante :

for element_1, element_2 in zip(iterable_1, iterable_2):
    ...
Copier après la connexion
for f, b in zip(foo, bar):
    print(f, b)
Copier après la connexion

Solution Python 2

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

import itertools
for f, b in itertools.izip(foo, bar):
    print(f, b)
Copier après la connexion

Si vous le souhaitez, itertools.izip_longest() peut être utilisé pour itérer jusqu'à ce que les deux itérables soient épuisés, en remplissant les champs manquants. valeurs avec la valeur de remplissage spécifiée (ou Aucune par défaut).

Points clés

  • Le La fonction zip() peut parcourir plusieurs itérables 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_longest() fournissent des itérateurs pour plus d'efficacité.

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 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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal