Description de la fonction zip()
La fonction Python zip() est utilisée pour regrouper des éléments de plusieurs itérables en un seul itérable de tuples. Elle prend en entrée une ou plusieurs séquences (comme des listes, des tuples, des chaînes, etc.) et renvoie un objet itérable de tuples, où le ième tuple contient l'ième élément de chaque séquence d'entrée. La longueur de l'itérable de sortie sera égale à la longueur de la séquence la plus courte parmi les séquences d'entrée.
Exemple d'usage de la fonction zip()
Voici un exemple d'utilisation de zip() avec deux listes :
Exemple
1 2 3 4 5 |
list1 = [1, 2, 3] list2 = ['a', 'b', 'c'] zipped = zip(list1, list2) print(list(zipped)) # output: [(1, 'a'), (2, 'b'), (3, 'c')] |
Remarque
Noter bien que zip() renvoie un objet itérable de tuples, et non pas une liste, un tuple ou un autre type d'objet. Pour obtenir une liste ou un tuple, vous devez utiliser la fonction list() ou tuple() sur le résultat renvoyé par zip().
Il est également possible de faire une boucle à travers les éléments de plusieurs itérables à la fois en utilisant la fonction zip, comme ceci:
Exemple
1 2 3 4 5 6 7 8 9 10 |
list1 = [1, 2, 3] list2 = ['a', 'b', 'c'] for x, y in zip(list1, list2): print(x, y) """ output: 1 a 2 b 3 c """ |
Remarque
Noter bien que la fonction zip() ne modifie pas les séquences d'entrée, elle crée un nouvel objet itérable. Il est également possible de utiliser la fonction zip() avec des arguments plusieurs itérables , dans ce cas elle va regrouper les éléments en utilisant la première séquence comme base pour créer les tuples.
Younes Derfoufi
CRMEF OUJDA
Vous faites du bon travail. Explications claires et précises, avec des exemples pour mieux assimiler.