# Add two tuples element-wise in Python Last updated: Jun 29, 2022 Photo from Unsplash

## Add two tuples element-wise in Python#

To add two tuples element-wise:

1. Use the `zip` function to get an iterable of tuples with the corresponding items.
2. Use a list comprehension to iterate over the iterable.
3. On each iteration, pass the tuple to the `sum()` function.
main.py
```Copied!```tuple_1 = (1, 2, 3)
tuple_2 = (4, 5, 6)

# 👇️ [(1, 4), (2, 5), (3, 6)]
print(list(zip(tuple_1, tuple_2)))

result = [sum(tup) for tup in zip(tuple_1, tuple_2)]

print(result)  # 👉️ [5, 7, 9]
``````

The zip function iterates over several iterables in parallel and produces tuples with an item from each iterable.

main.py
```Copied!```tuple_1 = (1, 2, 3)
tuple_2 = (4, 5, 6)

# 👇️ [(1, 4), (2, 5), (3, 6)]
print(list(zip(tuple_1, tuple_2)))
``````

You can imagine that the `zip()` function iterates over the tuples, taking 1 item from each.

The first tuple in the list consists of the elements in each tuple that have an index of `0`, and the second tuple consists of the elements in each tuple that have an index of `1`.

The last step is to use a list comprehension to iterate over the `zip` object and sum each tuple.

main.py
```Copied!```tuple_1 = (1, 2, 3)
tuple_2 = (4, 5, 6)

# 👇️ [(1, 4), (2, 5), (3, 6)]
print(list(zip(tuple_1, tuple_2)))

result = [sum(tup) for tup in zip(tuple_1, tuple_2)]

print(result)  # 👉️ [5, 7, 9]
``````
List comprehensions are used to perform some operation for every element, or select a subset of elements that meet a condition.

The sum function takes an iterable, sums its items from left to right and returns the total.

On each iteration, we pass the current tuple to the `sum()` function and get the total.

You can also use this approach to add more than two tuples element-wise.

main.py
```Copied!```tuple_1 = (1, 2, 3)
tuple_2 = (4, 5, 6)
tuple_3 = (7, 8, 9)

# 👇️ [(1, 4, 7), (2, 5, 8), (3, 6, 9)]
print(list(zip(tuple_1, tuple_2, tuple_3)))

result = [sum(tup) for tup in zip(tuple_1, tuple_2, tuple_3)]

print(result)  # 👉️ [12, 15, 18]
``````
I wrote a book in which I share everything I know about how to become a better, more efficient programmer. You can use the search field on my Home Page to filter through all of my articles.