Python · Intermediário · Inglês · Técnico
args e kwargs
Convenção para os parâmetros *args, que reúne argumentos posicionais extras numa tupla, e **kwargs, que reúne os nomeados extras num dicionário. Permite funções com número variável de argumentos.
Onde usar
Aparece em decorators e em funções que repassam argumentos adiante sem conhecê-los. Em APIs públicas, abusar deles esconde a assinatura real e atrapalha o autocompletar.
Em código
def mostrar(*args, **kwargs):
print(args)
print(kwargs)
mostrar(1, 2, cor='azul')Exemplos
Forward everything with *args and **kwargs.
Repasse tudo com *args e **kwargs.
The wrapper accepts any call through args and kwargs.
O wrapper aceita qualquer chamada por meio de args e kwargs.
Cuidado
Os nomes args e kwargs são só convenção; o que vale são o * e o **.