Я попытался использовать typing.Any и typing.Tuple для аннотации *args в моей командной функции discord.py. Однако обе попытки привели к ошибке TypeError, в которой говорилось, что аннотация типа не поддерживается. Я ожидал, что эти аннотации будут приняты и позволят функции обрабатывать несколько аргументов любого типа.
Пример:
Код: Выделить всё
import discord
from discord import app_commands
from typing import Any
class Client(discord.Client):
def __init__(self):
intents = discord.Intents.all()
super().__init__(intents=intents)
self.tree = app_commands.CommandTree(self)
async def on_ready(self):
await self.tree.sync()
client = Client()
@client.tree.command(name="test", description="testing...")
async def test(interaction: discord.Interaction, *args: Any):
await interaction.response.defer()
raise TypeError(f'аннотация неподдерживаемого типа {annotation!r}')
TypeError: ввод аннотации неподдерживаемого типа.Любой
Подробнее здесь: https://stackoverflow.com/questions/791 ... p-commands