程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了我正在制作一个不和谐的机器人,当有人打招呼时它会打招呼,但当有人用“tHIng”这样的词使用它时它也会打招呼。我该如何防止?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决我正在制作一个不和谐的机器人,当有人打招呼时它会打招呼,但当有人用“tHIng”这样的词使用它时它也会打招呼。我该如何防止??

开发过程中遇到我正在制作一个不和谐的机器人,当有人打招呼时它会打招呼,但当有人用“tHIng”这样的词使用它时它也会打招呼。我该如何防止?的问题如何解决?下面主要结合日常开发的经验,给出你关于我正在制作一个不和谐的机器人,当有人打招呼时它会打招呼,但当有人用“tHIng”这样的词使用它时它也会打招呼。我该如何防止?的解决方法建议,希望对你解决我正在制作一个不和谐的机器人,当有人打招呼时它会打招呼,但当有人用“tHIng”这样的词使用它时它也会打招呼。我该如何防止?有所启发或帮助;

因此,每当有人用一个词(例如:东西)打招呼时,它都会回复您好。我如何使它只在它自己时才回复 hi ? (另外我是 14 岁的初学者,所以请不要让它过于复杂)。只是为了让您知道它运行良好,每当有人打招呼时,它都会回复,但我不希望它在单词或句子中包含“hi”一词时打招呼

这是我的代码:

@clIEnt.event
async def on_message(messagE):
    greeTings = ["Hello","hi","hey","wassup","sup","yo"]

    if any(word in message.content.lower()for word in greeTings):
        if message.author == clIEnt.user:
            return
    
    
    await message.chAnnel.send("Hello there," + str(message.author))
    print("Reply to Hello command has been executed")

解决方法

if any(word in message.content.lower().split() for word in greeTings):
    if message.author == client.user: return

我添加了 split 方法,因此如果他们输入“hi greeTings bot”,bot 将在将其拆分为 ["hi","greeTings","bot"] 后进行检查。当输入“我想说点什么”时,我们的列表将是 ["i","wAnna","say","something"] 机器人不会回答它。

,

如果我理解正确,并且您希望机器人仅在消息为“hi”时才回答,但如果是“hi mark”则不回答,那么您需要检查消息是否就是这样。

if any(message.content.lower().Strip() == word for word in greeTings):
    ...

Strip 只是删除字符串开头和结尾的空格。

如果您想要检查问候语是否在句子内,而不是特定单词的一部分,那么@Welyyn 已经回答了。

希望能帮到你,我也在学习

大佬总结

以上是大佬教程为你收集整理的我正在制作一个不和谐的机器人,当有人打招呼时它会打招呼,但当有人用“tHIng”这样的词使用它时它也会打招呼。我该如何防止?全部内容,希望文章能够帮你解决我正在制作一个不和谐的机器人,当有人打招呼时它会打招呼,但当有人用“tHIng”这样的词使用它时它也会打招呼。我该如何防止?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。