You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Python Telegram Bot ConversationBot横向按钮改为纵向

解决按钮纵向排列的问题

在python-telegram-bot的按钮配置中,按钮的排列由InlineKeyboardMarkup(或ReplyKeyboardMarkup,取决于使用的按钮类型)的嵌套列表结构决定:

  • 外层列表代表整个键盘的行集合
  • 每个内层子列表代表单独一行的按钮

原示例中所有按钮都放在同一个内层列表里,因此会横向并排显示。要改成纵向每行一个按钮,只需把每个按钮单独放在一个子列表中即可。

修改前的代码(横向排列)

keyboard = [
    [InlineKeyboardButton("Number1ToChoose", callback_data='1'),
     InlineKeyboardButton("Number2ToChoose", callback_data='2'),
     InlineKeyboardButton("Number3ToChoose", callback_data='3'),
     InlineKeyboardButton("Number4ToChoose", callback_data='4'),
     InlineKeyboardButton("Number5ToChoose", callback_data='5')]
]
reply_markup = InlineKeyboardMarkup(keyboard)

修改后的代码(纵向排列)

keyboard = [
    [InlineKeyboardButton("Number1ToChoose", callback_data='1')],
    [InlineKeyboardButton("Number2ToChoose", callback_data='2')],
    [InlineKeyboardButton("Number3ToChoose", callback_data='3')],
    [InlineKeyboardButton("Number4ToChoose", callback_data='4')],
    [InlineKeyboardButton("Number5ToChoose", callback_data='5')]
]
reply_markup = InlineKeyboardMarkup(keyboard)

这样修改后,每个按钮就会单独占据一行,达到你期望的显示效果。

内容的提问来源于stack exchange,提问作者Saeed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 13:59:56