Python 电报机器人-如何从解析的csv返回带有值的答案
我有一个带有几个字段的csv。 这个想法是:Python 电报机器人-如何从解析的csv返回带有值的答案,python,csv,telegram-bot,Python,Csv,Telegram Bot,我有一个带有几个字段的csv。 这个想法是: 用户在聊天中写入内容(文本) Bot检查用户写入的消息(值)是否在csv中 如果有,bot将显示csv中的字段作为写入值 到目前为止,我设法解析了csv文件并获得了一个列表: myTable = [] with open("table.csv", 'r', encoding='utf-8-sig') as File: reader = csv.DictReader(File) for row in reader:
myTable = []
with open("table.csv", 'r', encoding='utf-8-sig') as File:
reader = csv.DictReader(File)
for row in reader:
myTable.append(row)
但我一直在处理用户的消息并正确返回答案,这种方式不起作用:
@bot.message_handler(content_types=['text'])
def send_text(message):
if message.text in myTable:
bot.reply_to(message, "Yes")
else:
bot.reply_to(message, "Nope")
非常感谢您的帮助。只有当用户从
myTable
@AndreySherman发送准确的行(字符串格式)时,此示例才有效。谢谢您的评论。是的,这是真的,所以基本上我现在面临两个障碍:1)上面的代码片段不起作用-所以即使用户发送准确的值,也无法正确处理。看来连这部分都不对。2) 弄清楚如何处理用户发送的案例不是精确的值,而是以小写/大写字母或空格等开头的值。如果您对如何处理有任何想法/经验,我将不胜感激。@Flashka请尝试在send\u text
函数中打印message.text
和myTable
。至少要查看值。仅当用户从myTable
@AndreySherman发送精确的行(字符串格式)时,此示例才有效谢谢您的评论。是的,这是真的,所以基本上我现在面临两个障碍:1)上面的代码片段不起作用-所以即使用户发送准确的值,也无法正确处理。看来连这部分都不对。2) 弄清楚如何处理用户发送的案例不是精确的值,而是以小写/大写字母或空格等开头的值。如果您对如何处理有任何想法/经验,我将不胜感激。@Flashka请尝试在send\u text
函数中打印message.text
和myTable
。至少要查看值。