Python Discord.py角色编辑
我得到了这个角色编辑命令来更改颜色和名称 我的代码:Python Discord.py角色编辑,python,discord,discord.py,Python,Discord,Discord.py,我得到了这个角色编辑命令来更改颜色和名称 我的代码: @client.command() async def editrole(ctx,角色:discord.role,颜色:discord.Color,名称): 等待角色。编辑(颜色=颜色,名称=名称) 嵌入=不和谐。嵌入( description=(f'角色{role}的更改已应用'), 颜色=不和谐。颜色。橙色() ) 等待ctx.send(嵌入=嵌入) 但是,我只希望两者中的一个生效,例如,如果我说“editrole” 它将改变颜色并保
@client.command()
async def editrole(ctx,角色:discord.role,颜色:discord.Color,名称):
等待角色。编辑(颜色=颜色,名称=名称)
嵌入=不和谐。嵌入(
description=(f'角色{role}的更改已应用'),
颜色=不和谐。颜色。橙色()
)
等待ctx.send(嵌入=嵌入)
但是,我只希望两者中的一个生效,例如,如果我说“editrole”
它将改变颜色并保留名称
反之亦然(只需更改名称并保留颜色)。可能吗?我总是必须输入两个参数才能使事情发生
我听到过键入.Optional[]的声音,但默认值会将它们重置为“new role”。您可以执行类似操作以保持
名称的可选性。但我不认为你可以保留颜色
可选。如果希望color
是可选的,可以将其保留为最后一个参数,并将其默认为None
,但是name
将不是可选的
@client.command()
异步def editrole(ctx,角色:discord.role,颜色:discord.color,*,name=None):
等待角色。编辑(颜色=颜色)
如果名称!=无:
等待角色。编辑(名称=名称)
嵌入=不和谐。嵌入(
description=(f'角色{role}的更改已应用'),
颜色
)
等待ctx.send(嵌入=嵌入)
因此,您可以只提供颜色
,也可以同时提供颜色
和名称