Я уже довольно давно работаю над своим дискорд-ботом, работаю над экономической системой. И нужно сделать опцию «пользователь», но нужно сделать ее необязательной, чтобы пользователь мог просто использовать «/balance» вместо ввода имени пользователя.
Я искал все, что мог, переполнение стека, Google и т. д.
@client.tree.command(name = "balance", description = "Check the balance of yourself or another user")
@app_commands.describe(user = "Who's balance do you want to check?")
async def balance(interaction: discord.Interaction, user: discord.Member):
if user == None:
user = interaction.user
await interaction.response.send_message(user.display_name)
это мой код.
Вы можете добиться этого, используя Optional
из библиотеки ввода текста .
from typing import Optional
...
@client.tree.command(name = "balance", description = "...")
@app_commands.describe(user = "Who's balance do you want to check?")
async def balance(interaction: discord.Interaction, user: Optional[discord.Member]): # Use Optional on your discord.Member
if user == None:
user = interaction.user
await interaction.response.send_message(user.display_name)
...
Я откатил ваше редактирование. Здесь недопустимо добавлять РЕШЕНО к заголовку вопроса. Вы уже сказали всем, что проблема решена, приняв на нее ответ.