Part of the series

Several example codes

~1 min read • Updated Oct 5, 2025

Program Overview

This Python program generates all valid integers composed only of the digits 0, 1, and 2.
The program avoids leading zeros and displays numbers of varying lengths (e.g., 1-digit, 2-digit, up to a specified limit).
This is useful for simulations, encoding systems, or digit-based filtering.


Python Code:


from itertools import product

# Digits allowed
digits = ['0', '1', '2']

# Maximum number of digits
max_length = 4

print("Generated numbers using digits 0, 1, and 2:")

for length in range(1, max_length + 1):
    for combo in product(digits, repeat=length):
        # Skip numbers with leading zero
        if combo[0] == '0':
            continue
        print(''.join(combo))

Sample Output:


1  
2  
10  
11  
12  
...  
2222

Step-by-Step Explanation:

- product(digits, repeat=length) generates all combinations of the given length
- Leading zeros are skipped to avoid invalid integers
- ''.join(combo) converts the digit tuple into a string representation
- You can increase max_length to generate longer numbers


Written & researched by Dr. Shahin Siami