Argumentos nomeados de tamanho variável
Agora vamos para argumentos nomeados de tamanho variável! Sua tarefa é definir a função key_types(). Ela deve receber um número variável de argumentos nomeados e retornar um novo dicionário: as chaves são os tipos de objeto únicos dos argumentos passados para a função key_types() e os valores associados representam listas. Cada lista deve conter os nomes dos argumentos que correspondem ao tipo definido como chave (por exemplo, chamar key_types(kwarg1='a', kwarg2='b', kwarg3=1) resulta em {<class 'int'>: ['kwarg3'], <class 'str'>: ['kwarg1', 'kwarg2']}).
Para obter o tipo de um objeto, você precisa usar a função type() (por exemplo type(1) é int).
Este exercício faz parte do curso
Praticando questões de entrevista de código em Python
Instruções do exercício
- Defina a função com um número arbitrário de argumentos nomeados.
- Itere sobre os pares chave-valor.
- Atualize a lista associada a uma chave.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Define the function with an arbitrary number of arguments
def key_types(____):
dict_type = dict()
# Iterate over key value pairs
for key, value in kwargs.____:
# Update a list associated with a key
if ____(____) in ____:
dict_type[____].____
else:
dict_type[____] = [____]
return dict_type
res = key_types(a=1, b=2, c=(1, 2), d=3.1, e=4.2)
print(res)