How do I create p
below?
Is this a list comprehension & .map() problem?
pr = [{"pr":"DEV"}, {"pr":"STEVE"}]
spr = "what"
p = [{"pr":"DEV", "spr":"what"}, {"pr":"STEVE", "spr":"what"}]
How do I create p
below?
Is this a list comprehension & .map() problem?
pr = [{"pr":"DEV"}, {"pr":"STEVE"}]
spr = "what"
p = [{"pr":"DEV", "spr":"what"}, {"pr":"STEVE", "spr":"what"}]
Given an arbitrary list of pr
values, you can use
p = [{"pr": k, "spr": spr} for k in pr]
To handle the edit,
p = [dict(**x, spr=spr) for x in pr]
# In Python 3.9,
# p = [x | {"spr": spr} for x in pr]
Merge the dictionaries inside the list comprehension:
pr = [{"pr":"DEV"}, {"pr":"STEVE"}]
spr = "what"
p = [{**x, **{'spr': spr}} for x in pr]
print(p)
# [{'pr': 'DEV', 'spr': 'what'}, {'pr': 'STEVE', 'spr': 'what'}]