【发布时间】:2020-10-22 22:29:42
【问题描述】:
我正在用 python 制作一个 Discord Bot,现在我正在制作一个命令,如果满足某些要求,bot 会重复你的输入。该命令的完整代码是here(我添加了注释)。我正在对输入进行清理,其中一部分是检查输入中是否使用了任何不好的词。
输入是一个元组,我这样做是为了显示前 5 个单词。
所以我想检查输入中是否使用了这些 BADWORD_triggers,目前我正在这样做:elif ' '.join(args) in BADWORD_triggers 但是,它只检查 first 单词是否是触发器之一.我还尝试了elif args in BADWORD_triggers 和elif BADWORD_triggers in args,这只会导致错误。
对于其他命令,我使用 def async function(ctx, *, arg),我可以检查输入是否包含任何 BADWORD_triggers,如下所示:if arg in BADWORD_triggers:,因为 *, arg 是一个字符串。
所以我的问题是具体的:如何检查元组是否包含列表中的任何内容。
例子:
这里我使用了一个坏词“bad”作为唯一的第一个输入,机器人拒绝说出来。但是我希望它也拒绝这个,因为它包含一个坏词。 https://imgur.com/a/CTA06Q1
在这里我使用了一个坏词“bad”,但输入更多,该消息被删除 机器人重复我说的话。 https://imgur.com/a/5v3Rpx2
【问题讨论】:
-
无法清楚地理解您的问题,添加一个示例
Tuple,您希望将其与示例list匹配并在您的问题中输出以获得更好的解释 -
我当然可以。
标签: python list tuples sanitization