是否存在使用列表中的项定义字典的键和值的pythonic方法?
例如,我可以使用:
s = {}
a = ['aa', 'bb', 'cc']
for a in aa:
s['text_%s' %a] = 'stuff %s' %a
In [27]: s
Out[27]: {'text_aa': 'stuff aa', 'text_bb': 'stuff bb', 'text_cc': 'stuff cc'}
我想知道是否有可能通过列表理解或其他技巧来遍历列表。
类似:
s[('text_' + a)] = ('stuff_' + a) for a in aa
谢谢!
答案 0 :(得分:5)
使用字典理解:
{'text_%s' %x: 'stuff %s' %x for x in a}
在较新版本中:
{f'text_{x}': f'stuff {x}' for x in a}
答案 1 :(得分:3)
您可以使用字典理解:
a = ['aa', 'bb', 'cc']
my_dict = {f'key_{k}':f'val_{k}' for k in a}
print(my_dict)
输出:
{'key_aa': 'val_aa', 'key_bb': 'val_bb', 'key_cc': 'val_cc'}