x x
Профи
(544)
8 лет назад
если надо задать диапазон символов, можно например таким выражением:
[chr(i) for i in range(ord('a'),ord('z')+1)]
--символы от a до z
принадлежность символа диапазону соответственно:
'a' in [chr(i) for i in range(ord('a'),ord('z'))]
диапазон целых чисел - специальная функция range():
range(2,9)
Капитан Гугл
Искусственный Интеллект
(146215)
8 лет назад
В Python строки и символы не различаются, поэтому они не относятся к перечислимым типам. Надо преобразовывать в коды функцией ord. И есть проблема - range не включает правую границу, т. е. '9' не попадает в диапазон. Надо делать
if ord(s) in range(ord('0'),ord('9')+1):
но проще все-таки
if s.isdigit(): # если s - цифра
x xПрофи (544)
8 лет назад
другими словами, символы в питоне это строки единичной длины, но получить коллекцию из диапазона символов можно: [chr(i) for i in range(ord('a'),ord('z')+1)]
и необязательно представлять как множество числовых кодов, ord() дает код символа, дальше функция range создает коллекцию с диапазоном числовых кодов символов, затем она преобразуется этим выражением в коллекцию (список) соответствующих символов (функция chr() дает символ (строку единичной длины с символом) по его коду).
Как сделать то же самое, но на Питоне?