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


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 формат.


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
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.