telegram bot помощь с вводом

На что заменить while и print, что бы все работало в телеграмме Бот для статистики рулетки, записываю выпавшее число с клавиатуры и каждый раз инфа обновляется и выводится статистика

import telebot
from telebot import types

bot = telebot.TeleBot('...')

@bot.message_handler()
def info(message):
    markup = types.InlineKeyboardMarkup()
    btn1 = types.InlineKeyboardButton('Начать', callback_data='start')
    btn2 = types.InlineKeyboardButton('Сброс', callback_data='reset')
    markup.row(btn1, btn2)
    bot.reply_to(message, 'Нажмите, что бы продолжить', reply_markup=markup)

@bot.callback_query_handler(func=lambda callback: True)
def callback_message(callback):
    if callback.data == 'start':
        result = ['00', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18',
                  '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36']
        red = [1, 3, 5, 7, 9, 12, 14, 16, 18, 19, 21, 23, 25, 27, 30, 32, 34, 36]
        black = [2, 4, 6, 8, 10, 11, 13, 15, 17, 20, 22, 24, 26, 28, 29, 31, 33, 35]
        even =  [i for i in range(0, 38, 2)]
        odd = [i for i in range(-1, 37, 2)]
        first_sec = [i for i in range(1, 13)]
        second_sec = [i for i in range(13, 25)]
        third_sec = [i for i in range(25, 37)]
        one_1_18 = [i for i in range(1, 19)]
        two_19_36 = [i for i in range(19, 37)]
        stat = []
        all_num = {i : 0 for i in range(1, 37)}
        red_stat = black_stat = even_stat = odd_stat = first_sec_stat = second_sec_stat = third_sec_stat = one_1_18_stat = two_19_36_stat = one_stat = two_stat = 0

        while True:
            number = input('ВВЕДИТЕ ЧИСЛО ИЛИ НАПИШИТЕ "СБРОС":  ')
            if number in result:
                if number == '00':
                    stat.append("00")
                else:
                    stat.append(int(number))
                if int(number) in red:
                    red_stat += 1
                elif int(number) in black:
                    black_stat += 1
                if int(number) in even:
                    even_stat += 1
                elif int(number) in odd:
                    odd_stat += 1
                if int(number) in first_sec:
                    first_sec_stat += 1
                elif int(number) in second_sec:
                    second_sec_stat += 1
                elif int(number) in third_sec:
                    third_sec_stat += 1
                if int(number) in one_1_18:
                    one_1_18_stat += 1
                elif int(number) in two_19_36:
                    two_19_36_stat += 1
                if number == '0':
                    one_stat += 1
                if number == '00':
                    two_stat += 1
                for i in all_num.keys():
                    if int(number) == i:
                        all_num[i] += 1

            elif callback.data == 'reset':
                stat.clear()
                red_stat = black_stat = even_stat = odd_stat = first_sec_stat = second_sec_stat = third_sec_stat = one_1_18_stat = two_19_36_stat = one_stat = two_stat = 0
                all_num = {i : 0 for i in range(1, 37)}

            print(f'{stat}\nКрасное = {red_stat}, Чёрное = {black_stat}\nЧётное = {even_stat}. Нечётное = {odd_stat}\n'
                  f'1-12 = {first_sec_stat}, 13-24 = {second_sec_stat}, 25-36 = {third_sec_stat}\n'
                  f'1-18 = {one_1_18_stat}, 19-36 = {two_19_36_stat},\n'
                  f'0 = {one_stat}, 00 = {two_stat}')

            c = 0
            for i, j in all_num.items():
                if c == 4:
                    print()
                    c = 0
                print(f"{i}:{j},", end=" ")
                c += 1
            print()


bot.polling(none_stop=True)

Ответы (0 шт):