传递3个参数导致Discord.py语法错误

我目前正在开发小型Discord机器人,并且收到以下错误消息:

async def redeemkey(ctx,*,member,key):
                                    ^
Syntax Error: invalid syntax

这是我的代码:

@client.command()
async def redeemkey(ctx,key):
    if key[keys] == True:
        role = discord.utils.get(member.server.roles,name='authenticated')
        await client.add_roles(member,role)

我尝试过在参数中进行切换,但似乎无法正确处理。

任何帮助将不胜感激!

hanyu294674597 回答:传递3个参数导致Discord.py语法错误

由于您希望给成员提供正确的密钥,因此您无需在函数中使用*。我们可以从ctx.author获取成员,并从命令中获取key

您可以使用member.server.roles来代替ctx.guild.roles。服务器已更改为discord.py的{​​{3}}中的行会。

如果keys是您的字典,则应使用keys[key],而不要使用key[keys]

@client.command()
async def redeemkey(ctx,key):
    if key in keys:
        role = discord.utils.get(ctx.guild.roles,name='authenticated')
        await client.add_roles(ctx.author,role)
本文链接:https://www.f2er.com/3083729.html

大家都在问