Iterate through two lists in parallel in Python
Iterating through a two lists in parallel is natively handled in Python using the zip function.
Iterate through two lists using zip
Python’s zip function will aggregate elements from two or more iterables.
1foo = ["x", "y", "z"]
2bar = [1, 2, 3]
3
4for f, b in zip(foo, bar):
5 print(f, b)Output:
1x 1
2y 2
3z 3This works with any number of iterables:
1foo = ["x", "y", "z"]
2bar = [1, 2, 3]
3baz = ["!", "@", "#"]
4
5for f, b, z in zip(foo, bar, baz):
6 print(f, b, z)Output:
1x 1 !
2y 2 @
3z 3 #If the index is necessary, use enumerate:
1foo = ["x", "y", "z"]
2bar = [1, 2, 3]
3
4for i, (f, b) in enumerate(zip(foo, bar)):
5 print(i, f, b)Output:
10 x 1
21 y 2
32 z 3