Я хочу сгенерировать все двоичные маски заданной длины, т.е. для n = 3 я хотел бы сгенерировать 000, 001, 010, 011, 100, 101, 110, 111.
Мой текущий код выглядит примерно так, довольно старый стиль, не могу понять, как сделать то же самое с f-строками или чем-то классным вместо zfill.
for i in range(2**n):
print(bin(i)[2:].zfill(n))
Есть идеи? Спасибо!