Задать вопрос
@bakin2004

Как сделать так, чтобы текст не выводился 2 раза?

users = [id1]

@bot.message_handler(func=lambda message: message.chat.id not in users)
def CheckUser(message):
    bot.send_message(message.chat.id, "Привет.")

@bot.message_handler(func=lambda message: message.chat.id in users)
def CheckUser(message):
    bot.send_message(message.chat.id, "Чтобы начать работу с программой введите /command ")
    if message.text == '/command':
        bot.send_message(message.chat.id, 'Все прошло успешно')
    else:
        bot.send_message(message.chat.id, 'Извините, я не понял команду. Чтобы начать работу с программой введите /command ')

bot.polling(none_stop=True, interval=0)


Так вот у меня одновременно выводится текст "Чтобы начать работу с программой введите /command " и 1 текст из конструкции else/ if. Как сделать так, чтобы выводилось все отдельно и смысл программы не поменялся?
  • Вопрос задан
  • 108 просмотров
Подписаться 2 Простой Комментировать
Решения вопроса 1
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
Если вы хотите всё в одно сообщение запихать - используйте переменные и отправляйте всё в самом конце. Реализация на JS:
function Checkuser(message) {
    let answer = 'Чтобы начать работу с программой введите /command';

    if (message.text === '/command') {
        answer += '\nВсе прошло успешно';
    } else{
        answer += '\nИзвините, я не понял команду. Чтобы начать работу с программой введите /command';
    }

    bot.sendMessage(chatId, answer);
    
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы