Я пытаюсь использовать словарь словарей для облегчения некоторых отчетов.Словари содержат некоторый шаблон с переменными формата;Я хотел бы заполнить их.
Это самостоятельный минималистский пример того, чего я пытаюсь достичь:
ISSUES = {
'BIG_ISSUE': {
'code': 1,
'title': 'Something interesting',
'detail': 'This is the affected domain {domain}'
},
'OTHER_ISSUE': {
'code': 2,
'title': 'Some other issue',
'detail': 'Blah.'
}
}
domain = 'foo.bar'
issue = ISSUES['BIG_ISSUE']
issue['detail'].format(domain=domain)
print(issue)
Это результат вышеприведенного:
{'code': 1, 'title': 'Something interesting', 'detail': 'This is the affected domain {domain}'}
Обратите внимание, что выше, {domain}
не был отформатирован в выводе.
Это ожидаемый результат, который я ищу:
{'code': 1, 'title': 'Something interesting', 'detail': 'This is the affected domain foo.bar'}
Я считаю,это связано с неизменяемостью строк?Я попытался следовать некоторым примерам на SO и попытался использовать dict()
и import copy; copy.deepcopy()
, но это дало мне те же результаты.