Python 从列表列表中创建基于模板的词典

Python 从列表列表中创建基于模板的词典,python,list,python-3.x,dictionary,Python,List,Python 3.x,Dictionary,我有两份清单: TEMPLATE = ['sing.','pl.','mode'] DATA = [ ['alpha','alphas',0], ['beta','betas',2], ['omega','omegas',3] 我想创建一个字典列表,如下所示: [ {'sing.': 'alpha', 'pl.': 'alphas', 'mode':0}, {'sing.': 'beta', 'pl.': 'betas', 'mode':2}, {'sing.': 'omega', 'pl.'

我有两份清单:

TEMPLATE = ['sing.','pl.','mode']
DATA = [
['alpha','alphas',0],
['beta','betas',2],
['omega','omegas',3]
我想创建一个字典列表,如下所示:

[ {'sing.': 'alpha', 'pl.': 'alphas', 'mode':0},
{'sing.': 'beta', 'pl.': 'betas', 'mode':2},
{'sing.': 'omega', 'pl.': 'omegas', 'mode':3} ]
在Python3中有没有一种快速的方法可以做到这一点?

使用zip将模板与单个数据条目编织在一起。生成的序列可以传递给dict构造函数。使用列表理解创建整个序列:

>>> [dict(zip(TEMPLATE,d)) for d in DATA]
[{'pl.': 'alphas', 'sing.': 'alpha', 'mode': 0}, {'pl.': 'betas', 'sing.': 'beta', 'mode': 2}, {'pl.': 'omegas', 'sing.': 'omega', 'mode': 3}]
您可以使用zip函数、dict构造函数和列表理解,如下所示

print([dict(zip(TEMPLATE, items)) for items in DATA])

这不是一个人们为你工作的地方。。展示你的努力。