Суть вопроса в том что в моем коде есть игра орел или решка, и когда пользователь пишет сумму после стороны монетки идут следущие действие. НО если вместо суммы написать сумму+еще что то, то бот вылетает и выдает ошибку. в общем надо сделать некую проверку чтобы когда ты писал не число или число с буквами/симвалами он говорил что сумма некорекнта. пробовал так же(я еще новичек) сделать то что if stavka != int то отправляется соощение что сумма не коретна, в итоге при написание любой сумму всфегда выдавало что она не коректна........
.
elif "/решка" in msg.lower():
db = sqlite3.connect('server4.db')
db.row_factory = sqlite3.Row
cursor = db.cursor()
stavkat = msg.lower().split('/решка ')[-1]
cursor.execute(f"UPDATE users SET stavka={stavkat} WHERE user_id = {user_id}")
flip = random.randint(1, 2)
if stavkat != int:
sender(id, "Веддите коректное число!")
else:
for mm in cursor.execute(f"SELECT money, stavka FROM users WHERE user_id = {user_id}"):
if mm['stavka'] > mm['money']:
sender(id, f"У вас недостаточно средств!\n\nТекущий баланс:{mm['money']}")
cursor.execute(f"UPDATE users SET stavka = 0 WHERE user_id = {user_id}")
else:
if flip == 2:
cursor.execute(f"UPDATE users SET stavka = {stavkat} WHERE user_id = {user_id}")
for m in cursor.execute(f"SELECT money, stavka FROM users WHERE user_id = {user_id}"):
cursor.execute(f"UPDATE users SET money = money+{m['stavka']} WHERE user_id = {user_id}")
sender(id, f"РЕШКА\n @id{user_id}({fullname}) Выиграл {stavkat}")
cursor.execute(f"UPDATE users SET stavka = 0 WHERE user_id = {user_id}")
for m2 in cursor.execute(f"SELECT money FROM users WHERE user_id = {user_id}"):
sender(id, f"Текущий баланс:{m2['money']}")
else:
cursor.execute(f"UPDATE users SET stavka = {stavkat} WHERE {user_id}")
for mmm in cursor.execute(f"SELECT money, stavka FROM users WHERE user_id = {user_id}"):
cursor.execute(f"UPDATE users SET money = money-{mmm['stavka']} WHERE user_id = {user_id}")
sender(id, f"РЕШКА\n @id{user_id}({fullname}) Проиграл {stavkat}")
cursor.execute(f"UPDATE users SET stavka = 0 WHERE user_id = {user_id}")
for mmm2 in cursor.execute(f"SELECT money FROM users WHERE user_id = {user_id}"):
sender(id, f"Текущий баланс:{mmm2['money']}")
db.commit()