pyTelegramBotAPI. Цикл for. Выдает все переменные из последовательности

Имеется список со словарями. Каждый словарь это вопрос из теста типа:

{"id":1,"qstn":"Столица Франции?","ans1":"Париж","ans2":"Брюссель","ans3":"Мадрид","ans4":"Лиссабон"},{"id":2,"qstn":"Столицей США?:","ans1":"Вашингтон","ans2":"Голливуд","ans3":"Нью-Йорк","ans4":"Бостон"}

После выбора теста, выполняется функция test_run(), которая выводит все вопросы последовательно и завершается.

Как решить? Нужно чтобы, каждый шаг цикла бот ожидал ответа и выполнялся дальше, когда ответ дадут.
Типа этого

import telebot
from telebot import types    

def test_run(message, need_test_id):
    markup  = types.ReplyKeyboardMarkup(resize_keyboard=True)
    count = 0
    for question in get_test(need_test_id):  #get_test хранит список
        markup.add(types.KeyboardButton(question['ans1']))
        markup.add(types.KeyboardButton(question['ans2']))
        markup.add(types.KeyboardButton(question['ans3']))
        markup.add(types.KeyboardButton(question['ans4']))

        if message.text == question['ans1']:
            count += 1 #Считает только правильные ответы. Для примера 'ans1' всегда правильный

        bot.send_message(message.chat.id, "Вопрос №{0}. {1}".format(question['id'], question['qstn']),reply_markup=markup)
    bot.send_message(message.chat.id,"Правильных ответов: {}".format(count))

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