Поскольку в вашем строковом вводе уже используются действительные заполнители для форматирования строки , все, что вам нужно сделать, - это преобразовать существующую структуру данных в имена двумерного отображения в значения:
template_values = {d['name']: d['value'] for d in list_of_dictionaries}
, а затем применитьэтот словарь для строк шаблона с синтаксисом вызова **mapping
для метода str.format()
в строке шаблона:
result = template_string.format(**template_values)
Демонстрация:
>>> list_of_dictionaries = [{'name': "a", 'value': "123"}, {'name': "b", 'value': "456"}]
>>> template_string = "blabla {a}"
>>> template_values = {d['name']: d['value'] for d in list_of_dictionaries}
>>> template_values
{'a': '123', 'b': '456'}
>>> template_string.format(**template_values)
'blabla 123'