Python 使用discord.py-rewrite生成全局检查函数

Python 使用discord.py-rewrite生成全局检查函数,python,discord,discord.py,discord.py-rewrite,Python,Discord,Discord.py,Discord.py Rewrite,所以,使用,我知道我可以使用: def检查(消息): “”“检查邮件作者和频道。”“” 返回message.author==ctx.author和message.channel==ctx.channel 等待机器人。等待(“消息”,超时=180,检查=检查) 检查消息输入(必须来自上下文作者和上下文通道)。但是因为我需要对几个命令进行检查,所以我不能只进行以下操作: def check_msg(上下文、消息): 返回context.author==message.author和context.

所以,使用,我知道我可以使用:

def检查(消息):
“”“检查邮件作者和频道。”“”
返回message.author==ctx.author和message.channel==ctx.channel
等待机器人。等待(“消息”,超时=180,检查=检查)
检查消息输入(必须来自上下文作者和上下文通道)。但是因为我需要对几个命令进行检查,所以我不能只进行以下操作:

def check_msg(上下文、消息):
返回context.author==message.author和context.channel==message.channel
然后使用:

wait bot.wait_for(“消息”,超时=180,检查=check_msg)

discord.py的重写分支不再存在。现在就是v1了

check
谓词,用于检查要等待的内容,该谓词只传递正在等待的事件的参数。这意味着,由于您正在等待消息事件,因此将只传递单个消息参数

实现所需功能的一种方法是使用包装器方法,该方法处理
上下文
参数并返回检查谓词,例如:

def包装器(上下文):
def check_消息(消息):
返回context.author==message.author和context.channel==message.channel
返回检查信息
wait bot.wait_for(“消息”,超时=180,检查=wrapper(ctx))

discord.py的重写分支不再存在。现在就是v1了

check
谓词,用于检查要等待的内容,该谓词只传递正在等待的事件的参数。这意味着,由于您正在等待消息事件,因此将只传递单个消息参数

实现所需功能的一种方法是使用包装器方法,该方法处理
上下文
参数并返回检查谓词,例如:

def包装器(上下文):
def check_消息(消息):
返回context.author==message.author和context.channel==message.channel
返回检查信息
wait bot.wait_for(“消息”,超时=180,检查=wrapper(ctx))

好的,我明白了,我将无法使用
@
语法。但它是有效的,谢谢你!如果你说的是这样的话,提及不应该真的和它有任何关系。不,我说的是装饰器的
@
语法。它不应该与使用命令扩展或两者都没有任何关系。好的,我明白了,我将无法使用
@
语法。但它是有效的,谢谢你!如果这就是你所说的,那么提及不应该真的与它有任何关系。不,我说的是装饰器的
@
语法。它不应该与是否使用命令扩展有任何关系。