【问题标题】:why my list print does not append problem为什么我的列表打印没有附加问题
【发布时间】:2019-07-19 09:53:53
【问题描述】:

这是电报(聊天应用程序)的代码,我想创建一个机器人,当每个人都说些什么时创建一个列表并将他们的用户名添加到列表中。 例如这是我的list = [] 当 x 发送消息时,列表应该是 = [(x username)] 之后,当您发送消息时,机器人应该回复此list = [(x username),(y username)]

我有这个问题,因为当我打印列表时,它给了我两个单独的列表。不是一个。 例如,当 Mohamad 发送消息时 它给了我这个:

[mohammad]

这没关系,但是当 Mitra 发送消息时,它应该是:

[Mohammad, Mitra]

但它是

[Mitra]

from telegram.ext import Updater , CommandHandler , Filters , 
CommandHandler , MessageHandler
from telegram import MessageEntity
from telegram import ParseMode , InputTextMessageContent

updater = Updater("989165404:AAF8DEjyunwrb88-1G8w62cGItzXj1J618g")


def msg_filter(bot , update):
    list = []
    list.append("{}".format(update.message.from_user.first_name))
    bot.send_message(chat_id = update.message.chat_id , text = " 
    {}".format(list))

        # bot.send_message(chat_id = update.message.chat_id , text = " 
     {}".format(update.message.from_user.first_name))
     print(list)

     updater.dispatcher.add_handler(MessageHandler(Filters.text , 
     msg_filter ))
     updater.start_polling()

【问题讨论】:

    标签: python list printing bots


    【解决方案1】:

    发生这种情况是因为您每次都在重置列表。 尝试在函数 msg_filter() 之外定义空白列表。

    list = []
    
    def msg_filter():
        //your code//
    

    告诉我它是否有效。 乐意效劳。 和平相处。

    【讨论】:

    • 如果我的解决方案对您有效,请检查绿色标记。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-19
    • 1970-01-01
    • 1970-01-01
    • 2015-05-24
    • 2017-11-29
    • 2010-12-14
    • 1970-01-01
    相关资源
    最近更新 更多