discord.py TypeError: find() got an unexpected keyword argument 'name'
discord.py TypeError: find() got an unexpected keyword argument 'name'
我正在使用 discord.py 库在 python 3.9 中编写一个机器人,目前我正在尝试获取名为“Knight”的角色。获取角色的代码行引发类型错误:discord.py TypeError: find() got an unexpected keyword argument 'name'
。造成这种情况的代码是 knightRole = discord.utils.find(ctx.guild.roles, name = "Knight")
。如果角色不存在(if knightRole
returns None
),下面的代码创建角色。
这是我的代码,后面是回溯:
discord.utils.find
函数接受一个谓词函数(因此是一个 returns True
或 False
的函数或 lambda)和一个序列,如下所示:
knightRole = discord.utils.find(lambda r: r.name == 'Knight', ctx.guild.roles)
您也可以使用类似的 discord.utils.get
,它确实具有您显然期望的界面:
knightRole = discord.utils.get(ctx.guild.roles, name='Knight')
我正在使用 discord.py 库在 python 3.9 中编写一个机器人,目前我正在尝试获取名为“Knight”的角色。获取角色的代码行引发类型错误:discord.py TypeError: find() got an unexpected keyword argument 'name'
。造成这种情况的代码是 knightRole = discord.utils.find(ctx.guild.roles, name = "Knight")
。如果角色不存在(if knightRole
returns None
),下面的代码创建角色。
这是我的代码,后面是回溯:
discord.utils.find
函数接受一个谓词函数(因此是一个 returns True
或 False
的函数或 lambda)和一个序列,如下所示:
knightRole = discord.utils.find(lambda r: r.name == 'Knight', ctx.guild.roles)
您也可以使用类似的 discord.utils.get
,它确实具有您显然期望的界面:
knightRole = discord.utils.get(ctx.guild.roles, name='Knight')