Desembalar argumentos de palavras-chave, mas apenas os que correspondem à função
Digamos que eu tenha uma função:
def foo(a=None, b=None, c=None):
return "a:%s, b:%s, c:%s" % (a, b, c)
Eu tenho um dicionário com alguns (ou nenhum) dos argumentos acima, mas também com chaves que não são chamadas de argumentos na função, por exemplo:
d = {'a': 1, 'x': 4, 'b': 2, 'y': 5}
Se eu chamar o seguinte, receberei um erro, porque 'x' e 'y' não são argumentos de palavra-chave na função foo.
foo(**d) # error
Existe uma maneira elegante de passar os argumentos de um dicionário para uma função, mas apenas os valores com chaves que correspondem aos argumentos da função.
Por favor, corrija-me se a terminologia do meu argumento / parâmetro estiver desativada.