примерно так
# Импорт
import telebot
# Определение бота
bot = telebot.TeleBot("TOKEN", parse_mode="MARKDOWN")
bot.set_webhook()
# Убирание кнопок
none = telebot.types.ReplyKeyboardRemove()
# # # # # # # # # # # # # # # # # # # # # # # # # # #
# команда /start
@bot.message_handler(commands=['start'])
def start(message):
bot.send_message(message.chat.id, "Приветственное сообщение. Введите цифру", reply_markup=none)
# обработчик сообщений, кнопок
@bot.message_handler(content_types=['text'])
def handler(message):
try: num = int(message.text) # пробуем перевести текст сообщения в число
except: # при неудаче просим ввести еще раз
bot.send_message(message.chat.id, f"Введите число!", reply_markup=none)
return
# способ первый:
files = {
1: r'path\to.file',
2: r'path\to\other.file'
}
path = files[num] # если юзер ввел 2, то будет открываться файл "path\to\other.file"
# # # # # # # # # # # #
# способ второй
path = f'{num}.txt' # если юзер ввел 5, то будет открываться файл "5.txt"
bot.send_document(message.chat.id, file=open(path, 'rb'), caption='подпись к файлу')
bot.polling(none_stop=True) # запуск бота