Подтвердить что ты не робот

Как использовать понимание списка, чтобы добавить элемент в копии словаря?

Дано:

template = {'a': 'b', 'c': 'd'}
add = ['e', 'f']
k = 'z'

Я хочу использовать понимание списка для создания

[{'a': 'b', 'c': 'd', 'z': 'e'},
 {'a': 'b', 'c': 'd', 'z': 'f'}]

Я знаю, что могу это сделать:

out = []
for v in add:
  t = template.copy()
  t[k] = v
  out.append(t)

но он немного подробный и не имеет преимущества перед тем, что я пытаюсь заменить.

Этот немного более общий вопрос о слиянии словарей несколько связан, но более или менее говорит об этом.

4b9b3361

Ответ 1

[dict(template,z=value) for value in add]

или (использовать k):

[dict(template,**{k:value}) for value in add]