python 按从小到大的顺序组合成一个字典_将Python字典排列组合成字典列表
鑒于字典看起來像這樣:
{
'Color': ['Red', 'Yellow'],
'Size': ['Small', 'Medium', 'Large']
}
如何創建一個結合了第一個字典鍵的各種值的字典列表?我想要的是:
[
{'Color': 'Red', 'Size': 'Small'},
{'Color': 'Red', 'Size': 'Medium'},
{'Color': 'Red', 'Size': 'Large'},
{'Color': 'Yellow', 'Size': 'Small'},
{'Color': 'Yellow', 'Size': 'Medium'},
{'Color': 'Yellow', 'Size': 'Large'}
]
解決方法:
我想你想要笛卡爾積,而不是排列,在這種情況下itertools.product可以幫助:
>>> from itertools import product
>>> d = {'Color': ['Red', 'Yellow'], 'Size': ['Small', 'Medium', 'Large']}
>>> [dict(zip(d, v)) for v in product(*d.values())]
[{'Color': 'Red', 'Size': 'Small'}, {'Color': 'Red', 'Size': 'Medium'}, {'Color': 'Red', 'Size': 'Large'}, {'Color': 'Yellow', 'Size': 'Small'}, {'Color': 'Yellow', 'Size': 'Medium'}, {'Color': 'Yellow', 'Size': 'Large'}]
標簽:python,python-2-7,dictionary
總結
以上是生活随笔為你收集整理的python 按从小到大的顺序组合成一个字典_将Python字典排列组合成字典列表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 装不起电脑不是错觉!AMD/Intel主
- 下一篇: python统计图教程_Python利用