str.format_map(mapping) подставляет именованные значения из mapping в шаблон строки. В отличие от format(**mapping), он использует переданный mapping напрямую, в том числе его собственное поведение поиска ключей.
Что делает метод format_map() у строк?
str.format_map(mapping) подставляет именованные значения из mapping в шаблон строки. В отличие от format(**mapping), он использует переданный mapping напрямую, в том числе его собственное поведение поиска ключей.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
str.format_map(mapping) подставляет именованные значения из mapping в шаблон строки. В отличие от format(**mapping), он использует переданный mapping напрямую, в том числе его собственное поведение поиска ключей.
Пример: '{name}: {score}'.format_map({'name': 'Анна', 'score': 10}) даст 'Анна: 10'. Отсутствующий ключ обычно вызывает KeyError, но пользовательский mapping может определить иной результат. Форматирование поддерживает спецификаторы представления значений. Шаблон с доступом к атрибутам не стоит без ограничений отдавать недоверенному пользователю, если доступны чувствительные объекты.