Python program to print all sublists of a list.

A sublist is a portion of a list containing one or more elements from the original list. Sublists can be contiguous (elements appear in the same order as the original) or non-contiguous (elements are taken from different positions).

Printing Contiguous Sublists Using Nested Loops

Contiguous sublists maintain the original order of elements. We can generate them using nested loops ?

def print_contiguous_sublists(items):
    for i in range(len(items)):
        for j in range(i, len(items)):
            print(items[i:j+1])

numbers = [11, 2, 3]
print_contiguous_sublists(numbers)
[11]
[11, 2]
[11, 2, 3]
[2]
[2, 3]
[3]

Printing Non-Contiguous Sublists Using itertools

Non-contiguous sublists can skip elements while maintaining relative order. The itertools.combinations() function generates all possible combinations ?

from itertools import combinations

def print_all_sublists(items):
    for r in range(1, len(items) + 1):
        for combo in combinations(items, r):
            print(list(combo))

numbers = [11, 3, 22]
print_all_sublists(numbers)
[11]
[3]
[22]
[11, 3]
[11, 22]
[3, 22]
[11, 3, 22]

Using List Comprehension

List comprehension provides a concise way to generate contiguous sublists in a single line ?

def get_contiguous_sublists(items):
    return [items[i:j+1] for i in range(len(items)) for j in range(i, len(items))]

letters = ['a', 'b', 'c']
sublists = get_contiguous_sublists(letters)
print(sublists)
[['a'], ['a', 'b'], ['a', 'b', 'c'], ['b'], ['b', 'c'], ['c']]

Comparison of Methods

Method Type Memory Usage Best For
Nested Loops Contiguous Low Printing directly
itertools.combinations Non-contiguous Medium All combinations
List Comprehension Contiguous High Creating list of sublists

Conclusion

Use nested loops for printing contiguous sublists directly. Use itertools.combinations() for generating all possible sublists including non-contiguous ones. List comprehension is ideal when you need to store all sublists in memory.

Updated on: 2026-03-24T21:02:19+05:30

6K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements