w3resource

Python: All possible combinations of the elements of a given list, use itertools module


35. All Combinations of List Elements

Write a Python program to get all possible combinations of the elements of a given list using the itertools module.

Sample Solution:

Python Code:

import itertools
def combinations_list(list1):
    temp = []
    for i in range(0,len(list1)+1):
        temp.append(list(itertools.combinations(list1,i)))
    return temp

colors = ['orange', 'red', 'green', 'blue']
print("Original list:")
print(colors)
print("\nAll possible combinations of the said list’s elements:")
print(combinations_list(colors))

Sample Output:

Original list:
['orange', 'red', 'green', 'blue']

All possible combinations of the said list’s elements:
[[()], [('orange',), ('red',), ('green',), ('blue',)], [('orange', 'red'), ('orange', 'green'), ('orange', 'blue'), ('red', 'green'), ('red', 'blue'), ('green', 'blue')], [('orange', 'red', 'green'), ('orange', 'red', 'blue'), ('orange', 'green', 'blue'), ('red', 'green', 'blue')], [('orange', 'red', 'green', 'blue')]]

For more Practice: Solve these Related Problems:

  • Write a Python program to generate all possible combinations of the elements of a given list using itertools.combinations and then sort them by length.
  • Write a Python program to create an iterator that yields all non-empty combinations of a list and then filter out those that do not meet a specific condition.
  • Write a Python program to generate combinations of list elements of varying lengths and then count the total number of combinations using itertools.
  • Write a Python program to generate all possible combinations of a list and then map a function to convert each combination into a hyphen-separated string.

Go to:


Previous: Write a Python program to compute the sum of digits of each number of a given list of positive integers.

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

Python Code Editor:


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

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.