from aiogram import executor from aiogram import Bot , Dispatcher , types from aiogram . contrib . fsm_storage . memory import MemoryStorage from aiogram . types import ReplyKeyboardMarkup bot = Bot ( token = BOT_TOKEN , parse_mode = types . ParseMode . HTML ) dp = Dispatcher ( bot , storage = MemoryStorage ( ) ) @dp.message_handler ( commands = [ 'start' ] ) async def bot_start ( message : types . Message ) : menu_default = ReplyKeyboardMarkup ( resize_keyboard = True ) menu_default . row ( "Анекдот" ) await message . answer ( '(Reply) кнопку' , reply_markup = menu_default ) @dp.message_handler ( text = 'Анекдот' ) async def bot_start ( message : types . Message ) : menu_default = ReplyKeyboardMarkup ( resize_keyboard = True ) menu_default . row ( "Смешной" , "Грустный" ) await message . answer ( 'Выберите анекдот' , reply_markup = menu_default ) @dp.message_handler ( text = [ 'Смешной' , 'Грустный' ] ) async def bot_start ( message : types . Message ) : if message . text == 'Смешной' : await message . answer ( 'Колобок повесился' ) else : await message . answer ( 'Он остался жив(' ) if __name__ == "__main__" : executor . start_polling ( dp )