Необходимо написать, что будет выведено в консоль при вызове функции с заданными параметрами:

event получит 'login'; details станет кортежем из 'success' и переданного словаря, а metadata — словарём с timestamp и source.

Короткий ответ

Что ответить на собеседовании

event получит 'login'; details станет кортежем из 'success' и переданного словаря, а metadata — словарём с timestamp и source.

Подробный разбор

Ответ с пояснениями

Условие

Необходимо написать, что будет выведено в консоль при вызове функции с заданными параметрами:

def log_event(event, *details, **metadata): print(event) print(details) print(metadata)

log_event("login", "success", {"login": "admin", "ip": "192.168.1.1"}, timestamp="[phone]", source="web")

Ответ

event получит 'login'; details станет кортежем из 'success' и переданного словаря, а metadata — словарём с timestamp и source.

Будет напечатано:

login
('success', {'login': 'admin', 'ip': '192.168.1.1'})
{'timestamp': '[phone]', 'source': 'web'}

Первый позиционный аргумент связывается с event. Остальные позиционные аргументы попадают в *details, поэтому словарь с login и ip остаётся одним элементом кортежа, а не превращается в metadata. Именованные аргументы собираются в **metadata. Маркер [phone] в условии — обычная строка; Python не интерпретирует его как телефон или специальную переменную.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее