Генерация комбинации символов с использованием Python

from itertools import combinations
f = open('snc.csv', 'w')
for comb in combinations(range('1','20'), 5):
    f.write(str(comb))
    f.write('\n')
f.close()

Мои сценарии работают с числами, я хочу, чтобы они работали и с символами от a до f, в диапазоне от 4, без повторений, без перемешивания, вот так

А, б, в, г, д

А, б, в, г, е

А, б, в, д, е

И так, во-первых, он всегда начинается с a, если a не существует в диапазоне от 4, то это статистика с b, порядок важен, так же, как и сценарий выше

1 ответ

Решение
from itertools import combinations
f = open('snc.csv', 'w')
for comb in combinations(range(26), 4):
    f.write("%s,%s,%s,%s\n" % tuple([chr(x + ord('a')) for x in comb]))
f.close()

РЕДАКТИРОВАТЬ Это также будет работать и, вероятно, немного легче читать:

from string import ascii_lowercase
from itertools import combinations
f = open('snc.csv', 'w')
for comb in combinations(ascii_lowercase, 4):
    f.write("%s,%s,%s,%s\n" % comb)
f.close()
Другие вопросы по тегам