Здраствуйте моя проблема заключается что я не могу сделать систему ставок в игре на VkAPI
Перепробовал уже все но не как не получается сделать так чтоб если пользователь вводил ставку цифрами выводилось "Ставка Принята!" а если присутствовали другие символы "Ставка НЕ Принята!" и чтобы эта система не реагировала на кнопку отмена
n1 = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]
if msg == "монетка?" or 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()
for i in msg:
if i == n1:
simvol_alp = True
if i != n1:
simvol_alp = False
if simvol_alp == True:
send_some_msg(id, "Ставка Принята!")
msg = monstavka
else:
send_some_msg(id, "Ставка НЕ Принята!")
Ответы (1 шт):
Автор решения: 4500zenja
→ Ссылка
Дублирую из комментария к вопросу:
for i in msg:
if i == n1:
simvol_alp = True
if i != n1:
simvol_alp = False
Незачем изучать каждый символ строки, когда можно проверить именно САМУ строку на предмет нахождения в списке. Для этого цикл можно аккуратно заменить на simvol_alp = msg in n1 — она как раз поместит в simvol_alp нахождение ставки в списке допустимых значений.
n1 = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"]
if msg == "монетка?" or 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, "Ставка НЕ Принята!")