Я пытаюсь перебрать алфавит, чтобы он напечатал '0, 1, 2, 3' и 'a, b, c' и '!'и так далее.После того, как все персонажи будут циклически пройдены, я хочу, чтобы они стали «aa», «ab», «a0» и так далее.Это рабочий код, который у меня есть:
alph = {
0: '0',
1: '1',
2: '2',
3: '3',
4: '4',
5: '5',
6: '6',
7: '7',
8: '8',
9: '9',
10: 'a',
11: 'b',
12: 'c',
13: 'd',
14: 'e',
15: 'f',
16: 'g',
17: 'h',
18: 'i',
19: 'j',
20: 'l',
21: 'm',
22: 'n',
23: 'o',
24: 'p',
25: 'q',
26: 'r',
27: 's',
28: 't',
29: 'u',
30: 'v',
31: 'w',
32: 'x',
33: 'y',
34: 'z',
35: '!'
}
def one(sweet):
print sweet
def yeah():
i = 0
while 1==1:
if divmod(i,36)[0] == 0:
a = alph[divmod(i, 36)[1]]
sweet = a
one(sweet)
i += 1
elif divmod(i,36)[0] < 36:
b = alph[divmod(i, 36)[1]]
a = alph[divmod(i, 36)[0]]
sweet = a + b
one(sweet)
i += 1
return false
yeah()
Эта часть прекрасно работает!он напечатает «а» через «!!».Часть, которую я изо всех сил пытаюсь обернуть вокруг себя, это третья часть:
elif divmod(i,36)[0] < 36**2:
c = alph[divmod(i, 36)[1]]
b = alph[divmod((i//36), 36)[0]]
a = alph[divmod(i, 36)[0]]
sweet = a + b + c
one(sweet)
i += 1
Это должно напечатать 'aaa' 'aab' и так далее.Я не уверен, как идти об этом.После этогоЯ также понял, что мне придется создавать бесконечное количество операторов «elif», одно для «aaaa», другое для «aaaaa» и т. Д. Каков наилучший способ создания функции, которая потенциально может перейти в бесконечность?