Python: Add two given lists of different lengths, start from right, use itertools module
Write a Python program to add two given lists of different lengths, starting from the right, using the itertools module.
Sample Solution:
Python Code:
from itertools import zip_longest
def elementswise_right_join(l1, l2):
result = [a + b for a,b in zip_longest(reversed(l1), reversed(l2), fillvalue=0)][::-1]
return result
nums1 = [2, 4, 7, 0, 5, 8]
nums2 = [3, 3, -1, 7]
print("\nOriginal lists:")
print(nums1)
print(nums2)
print("\nAdd said two lists from right:")
print(elementswise_right_join(nums1, nums2))
nums3 = [1, 2, 3, 4, 5, 6]
nums4 = [2, 4, -3]
print("\nOriginal lists:")
print(nums3)
print(nums4)
print("\nAdd said two lists from right:")
print(elementswise_right_join(nums3, nums4))
Sample Output:
Original lists: [2, 4, 7, 0, 5, 8] [3, 3, -1, 7] Add said two lists from right: [2, 4, 10, 3, 4, 15] Original lists: [1, 2, 3, 4, 5, 6] [2, 4, -3] Add said two lists from right: [1, 2, 3, 6, 9, 3]
Python Code Editor:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
Next: Write a Python program to add two given lists of different lengths, start from left, using itertools module.What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics