Код проверяет только однозначные цифры и не выходит из цикла. Как сделать, чтобы проверял и многозначные, и как выходить из цикла после этого?
Пояснение: сейчас simvol_alp = msg in n1 проверяет только 1 символ от ввода пользователя, если ввести два или более, то это уже не учитывается. Как можно сделать, чтобы учитывались и многозначные числа?
И как после ввода пользователем ставки выйти из этого цикла?
n1 = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]
if msg == "монетка?":
otmena = VkKeyboard(one_time=True)
otmena.add_button("Отмена")
send_some_msg(id, "Введите сумму ставки!", otmena)
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
if event.to_me and event.text:
msg = event.text.lower()
simvol_alp = msg in n1
if simvol_alp == True:
send_some_msg(id, "Ставка Принята!")
else:
send_some_msg(id, "Ставка НЕ Принята!")
Ответы (1 шт):
Автор решения: Roman-Stop RU aggression in UA
→ Ссылка
Для проверки, что строка состоит из цифр используйте isnumeric, для выхода из цикла - break:
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
if event.to_me and event.text:
msg = event.text.lower()
if msg.isnumeric():
send_some_msg(id, "Ставка Принята!")
break
else:
send_some_msg(id, "Ставка НЕ Принята!")