gpt4 book ai didi

python telegram.ext commandhandler 不适用于命令列表

转载 作者:行者123 更新时间:2023-12-01 02:21:05 24 4
gpt4 key购买 nike

我想在命令处理程序中使用命令列表,但永远不会调用相应的函数。

getabList = ["getab"]
for x in range(0, 31):
getabList.append("getab%03d" % (x,))
dp.add_handler(CommandHandler(getabList, self.getab))

仅在定义单个命令时才会调用 self.getab

这个想法是有一个命令列表,在发送电报消息时,这些命令本身已经包含参数,因为这样我就可以单击消息中的命令,而不是手动输入参数。例如/getab030 与/getab 030或者有没有办法在电报消息中使“/getab 030”成为链接?谢谢

最佳答案

这是向 CommandHandler 添加命令的正确方法

CommandHandler('命令字符串', command_to_execute)

或者举个例子

CommandHandler('getab', self.getab)

第一个参数是将触发机器人中的命令的字符串,第二个参数是要执行的函数。您还可以使用第三个参数 - pass_args=True 让机器人知道此命令后面跟着参数,并在函数中处理它们。

如果您不想使用 pass_args,您可以让用户调用 /getab 等通用命令,并让机器人通过键盘选项提示用户单击时,使用用户选择的值执行适当的命令。

关于python telegram.ext commandhandler 不适用于命令列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47937905/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com