Eu sempre vi uns código de função com esses argumentos. O que seriam?
Eu sempre vi uns código de função com esses argumentos. O que seriam?
Oi,
segue um exemplo:
Quando vc define uma função usando *args e **kwargs, vc está falando pro python que é pra pegar todos os parâmetros passados e dividir entre argumentos e argumentos com palavra chave.
Nesse exemplo, todos os argumentos passados diretamente (10 e 20), são agrupados em uma tupla que pode ser acessada pelo nome args e os com palavras chave ('a' e 'b') são agrupados em um dicionário que pode ser acessado pelo nome kwargs.
Note que os nomes args e kwargs são apenas nomes de variáveis, então vc pode usar o nome que quiser. O importante são os asteriscos antes dos nomes.
Se vc quiser procurar sobre o assunto, isso chama-se pack e unpack em python.
Segue o código escrito:
def f(*args,**kwargs):
print('args:',args)
print('kwargs:', kwargs)
f(10,20, a=100, b=300)
Nossa, muito obrigado