Есть ли лучший способ сделать следующее ..
template = """
This goes here {Item1},,, and here {Item2}
and here {Item3}
"""
mydict = {'Item1':'Cat',
'Item2':'Dog',
'Item3':'Hamster',
'Item4':'Donkey'
}
result = template.format(Item1=mydict['Item1'], Item2=mydict['Item2'], Item3=mydict['Item3'])
Главное, чтобы заполнители в строке формата назывались точно так же, как значения ключа в словаре.
НО Словарь может содержать больше ключевых значений, чем заполнителей.Заполнители ВСЕГДА будут подмножеством словаря
Я пробовал
template.format(**mydict)
, но это дает исключение KeyError.Я надеялся, что тихое перехват этого исключения сработает, но это не так.
Мое инстинктивное чувство состоит в том, что должен быть более питонский способ сделать это, кроме длинного способа выше.
Спасибо