w3resource

Python: Interleave multiple lists of different lengths using itertools module

Python Itertools: Exercise-38 with Solution

Write a Python program to interleave a number of lists of different lengths using the itertools module.

Sample Solution:

Python Code:

from itertools import chain, zip_longest
def interleave_diff_len_lists(list1, list2, list3, list4):
    return [x for x in chain(*zip_longest(list1, list2, list3, list4)) if x is not None]    
    
nums1 = [2, 4, 7, 0, 5, 8]
nums2 = [2, 5, 8]
nums3 = [0, 1]
nums4 = [3, 3, -1, 7]

print("\nOriginal lists:")
print(nums1)
print(nums2)
print(nums3)
print(nums4)

print("\nInterleave said lists of different lengths:")
print(interleave_diff_len_lists(nums1, nums2, nums3, nums4))

Sample Output:

Original lists:
[2, 4, 7, 0, 5, 8]
[2, 5, 8]
[0, 1]
[3, 3, -1, 7]

Interleave said lists of different lengths:
[2, 2, 0, 3, 4, 5, 1, 3, 7, 8, -1, 0, 7, 5, 8]

Python Code Editor:


Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to add two given lists of different lengths, start from left , using itertools module.

Next: Write a Python program to get the index of the first element, which is greater than a specified element using itertools module.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://198.211.115.131/python-exercises/itertools/python-itertools-exercise-38.php