Именованные аргументы переменного размера
Теперь перейдём к именованным аргументам переменного размера! Ваша задача — определить функцию key_types(). Она должна принимать произвольное количество именованных аргументов и возвращать новый словарь: ключами служат уникальные типы объектов переданных аргументов, а соответствующие значения представляют собой списки. Каждый список должен содержать имена аргументов, тип которых совпадает с ключом (например, вызов key_types(kwarg1='a', kwarg2='b', kwarg3=1) возвращает {<class 'int'>: ['kwarg3'], <class 'str'>: ['kwarg1', 'kwarg2']}).
Чтобы получить тип объекта, используйте функцию type() (например, type(1) возвращает int).
Это упражнение является частью курса
Практика задач для собеседования по программированию на Python
Инструкции к упражнению
- Определите функцию с произвольным числом именованных аргументов.
- Выполните итерацию по парам ключ — значение.
- Обновите список, связанный с ключом.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# 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)