zip Function
Combining iterables
Interview Relevant: Parallel iteration
zip Function
Combine multiple iterables element by element.
Code Examples
Using zip for parallel iteration.
python
1names = ["Alice", "Bob", "Charlie"]
2ages = [25, 30, 35]
3
4# Basic zip
5for name, age in zip(names, ages):
6 print(f"{name} is {age}")
7
8# Create dict from two lists
9d = dict(zip(names, ages))
10
11# Unzip (transpose)
12pairs = [(1, 'a'), (2, 'b'), (3, 'c')]
13nums, chars = zip(*pairs)
14
15# zip stops at shortest
16list(zip([1, 2, 3], [4, 5])) # [(1, 4), (2, 5)]
17
18# zip_longest for unequal lengths
19from itertools import zip_longest
20list(zip_longest([1, 2], [3, 4, 5], fillvalue=0))
21# [(1, 3), (2, 4), (0, 5)]