处理 pyTelegramBotAPI 浮动键盘值

问题描述

我是使用 pyTelegramBotAPI 制作 Telegram 聊天机器人的新手。在这种情况下,我有多种选择,“梯形”和“辛普森”。下面是代码

@bot.message_handler(commands=['calculate'])
def welcome(message):
    print(message)
    markup = types.ReplyKeyboardMarkup(one_time_keyboard=True)
    markup.add('Trapezoid','Simpson')
    reply = bot.reply_to(message,"Select computation method",reply_markup=markup)
    if(reply.text == 'Trapezoid'):
        bot.register_next_step_handler(reply,trapezoid_handler)
    elif(reply.text == 'Simpson'):
        bot.register_next_step_handler(reply,simpson_handler)

def trapezoid_handler(message):
    bot.send_message(message.id,"Trapezoid Block")

def simpson_handler(message):
    bot.send_message(message.id,"Simpson Block")

这是我运行 /calculate 命令时的图片

enter image description here

这是我按下“梯形”按钮时的图片

enter image description here

如你所见,当我按下“Trapezoid”按钮时,trapezoid_handler 没有被执行。

目标是,当我按下“梯形”或“辛普森”按钮时,它稍后会移动到以下按钮值。我是否正确访问浮动键盘值?我如何访问浮动键盘值?

感谢您的回复

解决方法

在这里,它返回回复文本(即“选择计算方法”)所以当你点击按钮时你没有得到实际值。

固定代码:

{a630e0a3-c544-11ea-9b8c-b73c488956ba,c2f03d24-2402-11eb-ab91-3f8e49eb63e7} 

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...