Adding corresponding elements of two lists can be useful in various situations such as processing sensor data, combining multiple sets of results, or performing element-wise operations in scientific computing. List Comprehension allows us to perform the addition in one line of code. It provides us a way to write for loop in a list.
# Input lists
a = [1, 3, 4, 6, 8]
b = [4, 5, 6, 2, 10]
# Add corresponding elements using list comprehension
c = [a[i] + b[i] for i in range(len(a))]
# Print the result
print(c)
Output
[5, 8, 10, 8, 18]
Other methods that we can use to add elements of two lists in python are:
Using zip() Function
zip() function zip() combines two or more iterables element by element that makes it easy to iterate over corresponding elements. It returns a tuple, which we can sum.
# Input lists
a = [1, 3, 4, 6, 8]
b = [4, 5, 6, 2, 10]
# Add corresponding elements using zip() and list comprehension
c = [x + y for x, y in zip(a, b)]
# Print the result
print(c)
Output
[5, 8, 10, 8, 18]
Using map() Function
map() function applies a given function to each item of an iterable (like a list) and returns a map object. We can use this to add corresponding elements of two lists.
# Input lists
a = [1, 3, 4, 6, 8]
b = [4, 5, 6, 2, 10]
# Use map to add corresponding elements of both lists
c = list(map(lambda x, y: x + y, a, b))
# Print the result
print(c)
Output
[5, 8, 10, 8, 18]
Using numpy Library
If we need to handle large lists or perform more complex operations, the numpy library can be helpful. It provides a fast way to perform element-wise operations on arrays.
# Import numpy library
import numpy as np
# Input lists
a = [1, 3, 4, 6, 8]
b = [4, 5, 6, 2, 10]
# Convert lists to numpy arrays and add them
c = np.add(a, b)
# Print the result
print(c)
Output
[ 5 8 10 8 18]
Using a Simple for Loop
The most basic way to add corresponding elements is by using a simple for loop. This method is easy to understand for beginners.
# Input lists
a = [1, 3, 4, 6, 8]
b = [4, 5, 6, 2, 10]
# Create an empty list to store the result
c = []
# Loop through both lists and add corresponding elements
for i in range(len(a)):
c.append(a[i] + b[i])
# Print the result
print(c)
Output
[5, 8, 10, 8, 18]