Mas temos o seguinte erro:
TypeError: funcao() missing 2 required positional arguments: 'parametro2' and 'parametro3'
Isso ocorre pois a lista é enviada para o parametro1, deixando os outros parâmetros vazios. Para resolvermos isso o Python nos fornece uma sintaxe que permite desempacotar os valores para enviar como parâmetro, utilzando * e ** (este último para dicionários).
Muitas vezes você irá ver por ai a seguinte sintaxe:
Se você quiser enviar os parâmetros de maneira nomeada (para poder trocar a ordem deles), você pode utilizar um dicionário para desempacotar:
Esta solução é muito útil para diversas situações, como deixar a chamada de uma função com muitos parâmetros mais limpa, construir os parâmetros no decorrer do código para só chamar ao final e até criar dinâmicamente os parâmetros:
Nenhum comentário:
Postar um comentário