首页 > 解决方案 > python 全局变量如何在 Telebot(pyTelegramBotAPI)中工作?

问题描述

我有一个简单的机器人,可以处理new_chat_members并向他们发送欢迎信息。我想在发送新消息之前删除以前的欢迎消息,为此我写入bot.send_message()一个全局变量previous_greeting并删除previous_greetingmessage_id它工作正常,但在某些情况下我有这样的事情:[1]:https : //imgur.com/xiTpfJI(对不起,第一个 stackoverflow quastion xD)

主机是heroku

处理程序代码:

previous_greeting = None

@bot.message_handler(content_types=["new_chat_members"])
def welcome_message(message):
    global previous_greeting

    try:
        bot.reply_to(previous_greeting, previous_greeting.message_id)
        bot.delete_message(message.chat.id, previous_greeting.message_id)
    except:
        bot.send_message(message.chat.id, "error", 
                parse_mode='HTML', disable_web_page_preview=True)
    finally:
        previous_greeting = bot.send_message(message.chat.id, "finally", 
                parse_mode='HTML', disable_web_page_preview=True)

标签: pythontelegram-botpy-telegram-bot-api

解决方案


推荐阅读