我正在用Python开发一个电报机器人,对该语言一无所知,但我对swift非常了解,我试着遵循它,但它不起作用。 我试图建立一个逻辑表达式,这样当消息“Economy”时,“if message.text==‘Economy’:”行可以工作,但它给出了一个我几个小时都无法理解的错误
import telebot
bot = telebot.TeleBot('token')
keyboard1 = telebot.types.ReplyKeyboardMarkup()
keyboard1.row('Группа ОБ20-1', 'Группа ОБ20-2', 'Группа ОБ20-3', 'Группа ОБ20-4')
keyboard2 = telebot.types.ReplyKeyboardMarkup()
keyboard2.row('Экономика', 'Астрология')
@bot.message_handler(commands=['start'])
def start_message(message):
bot.send_message(message.chat.id, 'Привет, выбери свою группу', reply_markup = keyboard1)
if message.text == 'Экономика':
@bot.message_handler(content_types = ['text'])
def send_text(message):
if message.text == 'Группа ОБ20-1':
bot.send_message(message.chat.id, '''9:00 - 10:30: История мировых цивилизаций (Зал: №3/6, Лектор: Прохоров Андрей Валерьевич)
\n10:40 - 12:10: История мировых цивилизаций (Зал: №3/6, Лектор: Прохоров Андрей Валерьевич)
\n12:20 - 13:50: -
\n14:00 - 15:30 - ''')
elif message.text == 'Группа ОБ20-2':
bot.send_message(message.chat.id, '''9:00 - 10:30: История мировых цивилизаций (Зал: №3/6, Лектор: Прохоров Андрей Валерьевич)
\n10:40 - 12:10: -
\n12:20 - 13:50: Информационные технологии в управлении (Зал: -, Лектор: Журавлев Игорь Владимирович)''')
elif message.text == 'Группа ОБ20-3':
bot.send_message(message.chat.id, '''9:00 - 10:30: История мировых цивилизаций (Зал: №3/6, Лектор: Прохоров Андрей Валерьевич)
\n10:40 - 12:10: Логика. Практические занятия (Зал: -, Лектор: Ковылин Юрий Алексеевич)
\n12:20 - 13:50: Информационные технологии в управлении. Лаб.Занятия (Зал: -, Лектор: Ващура Ирина Кириллсана)''')
elif message.text == 'Группа ОБ20-4':
bot.send_message(message.chat.id, '''9:00 - 10:30: История мировых цивилизаций (Зал: №3/6, Лектор: Прохоров Андрей Валерьевич)
\n10:40 - 12:10: Введение в профессиональную деятельность. Практика (Зал: -, Лектор: Борисенков Алексей Александрович)
\n12:20 - 13:50: Логика. Практические занятия (Зал: -, Лектор: Борисенков Алексей Александрович)''')
bot.polling()
错误消息表明问题的原因是“错误缩进”
这个问题可以通过向所有错误对齐的语句添加缩进来解决
关于Python使用索引的注意事项:
Python不使用大括号来封装代码块。它依赖于缩进(一个制表符或4个空格)来了解代码块的边界
Python中的缩进类似于Swift编程语言中的大括号
例如,假设函数是Swift,如下所示:
同样的函数也可以用Python编写:
你得到了一个缩进错误;您的Python缩进语法非常不稳定(混合并匹配0、2、6和4个空格)
在语法方面,您可能正在寻找类似于以下内容的内容,但请注意,我已删除了
if message.text == 'Экономика':
位,因为它在函数之外没有意义(没有要检查的message
!),也没有尝试在if
块中注册bot应答处理程序相关问题 更多 >
编程相关推荐