Список всевозможных строк, как начальная, но с разным регистром
есть входная строка допустим 'abc', а может кто имеет идейку, как сделать генерацию случайного регистра букв и вывод этих вариантов - 'Abc', 'ABc', AbC и т.д.
Ответы (2 шт):
Автор решения: Qwertiy
→ Ссылка
s = "aBc".lower()
for m in range(1<<len(s)):
print("".join((c.upper() if m&(1<<i) else c) for i,c in enumerate(s)))
Или, возможно, чуть оптимальнее: tio.run:
x = [(1<<i, c.lower(), c.upper()) for i,c in enumerate("aBc")]
for mask in range(1<<len(x)):
print("".join((u if mask&m else l) for m,l,u in x))
abc
Abc
aBc
ABc
abC
AbC
aBC
ABC
Автор решения: Qwertiy
→ Ссылка
from itertools import product
s = "aBc"
for x in product(*((c.lower(), c.upper()) for c in s)):
print("".join(x))
abc
abC
aBc
aBC
Abc
AbC
ABc
ABC