从列表和字典生成二元组

斯文

我正在寻找一种从列表和字典生成 2 元组的 Pythonic 方式。

目前我有一个列表和一本字典。

生成列表:

a_ids = ['A_%' % i for i in range(1,4)]

['A_1', 
 'A_2', 
 'A_3']

和字典:

a_dict = [{'A': i} for i in range(1,4)]

[{'A': 1}, 
 {'A': 2}, 
 {'A': 3}]

我想要的是某种返回方式:

[('A_1', {'A': 1}),
 ('A_2', {'A': 2}),
 ('A_3', {'A': 3})]

我试过了:

import itertools
list(itertools.product( (a_ids), (a_dict) ))

它很接近,但错误:) 我理解为什么,从概念上讲,但我不确定如何纠正它。

[('A_1', {'A': 1}),
 ('A_1', {'A': 2}),
 ('A_1', {'A': 3}),
 ('A_2', {'A': 1}),
 ('A_2', {'A': 2}),
 ('A_2', {'A': 3}),
 ('A_3', {'A': 1}),
 ('A_3', {'A': 2}),
 ('A_3', {'A': 3})]
切普纳

你想要zip,而不是itertools.product

both = zip(a_ids, a_dict)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章