Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Python. Значение в промежутке

dfhgfbuty tyiyti Ученик (86), закрыт 8 лет назад
Как в питоне узнать, принадлежит ли значение переменной String промежутку из некоторых значений. Ну, пример на Паскале будет выглядеть так: if(s in ['0'..'9']) then... //если s принадлежит множеству {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}, то выполнится условие...
Как сделать то же самое, но на Питоне?
Лучший ответ
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)
Остальные ответы
Пользователь удален Гуру (2725) 8 лет назад
Ты имел виду, если список содержит некий элемент?

mylist=["asdasd", "31312","adas"]

if "31312" in mylist:
print("yes")
Капитан Гугл Искусственный Интеллект (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() дает символ (строку единичной длины с символом) по его коду).
Похожие вопросы