Как мне перебирать алфавит?

86

Могу ли я в Python просто ++ a char? Как это сделать эффективно?

Я хочу перебирать URL-адреса, у которых есть www.website.com/term/#, www.website.com/term/a, www.website.com/term/b, www.website.com/term/c, www .website.com / term / d ... www.website.com/term/z формат.

MillsOnWheels
источник
4
Существует 308 915 776 (26 ^ 6) способов собрать длинные строки из шести букв из любых букв - просто чтобы вы знали, если вы продвинетесь за пределы одной буквы.
Patashu

Ответы:

144

Вы можете использовать string.ascii_lowercaseэто просто удобную строку строчных букв,

>>> from string import ascii_lowercase
>>> for c in ascii_lowercase:
...     # append to your url
Джаред
источник
8
Справочно string.ascii_lowercaseобеспечивает'abcdefghijklmnopqrstuvwxyz'
whla
27

В дополнение к string.ascii_lowercaseвам также стоит взглянуть на ordи chrвстроенные модули. ord('a')даст вам значение ascii для 'a'и chr(ord('a'))вернет вам строку 'a'.

Используя их, вы можете увеличивать и уменьшать коды символов и достаточно легко преобразовывать туда и обратно. Таблица ASCII - тоже хорошая закладка.

Брайан
источник
Кроме того, если у вас есть man, вы можете получить таблицу ASCII через man ascii.
gluk47
1
Внимание, chr (x) вернет вам строковый тип.
Peiti Li