如何用iterables将dict“扩展”为Python中的dict列表

2024-04-25 08:13:34 发布

您现在位置:Python中文网/ 问答频道 /正文

例如,我有一个

{
    "key1":[1,2,3],
    "key2":[1,2]
}

我想把它变成

[{"key1":1, "key2":1},{"key1":1, "key2":2},{"key1":2, "key2":1}...]

我通过使用eval来实现这一点,我认为递归也有帮助。但是有更好的解决办法吗?你知道吗


Tags: evalkey2key1解决办法
1条回答
网友
1楼 · 发布于 2024-04-25 08:13:34
d = {
    "key1":[1,2,3],
    "key2":[1,2]
}
from itertools import product
[{'key1':i,'key2':j}  for i,j in product(d['key1'],d['key2'])]


[{'key1': 1, 'key2': 1}, {'key1': 1, 'key2': 2}, {'key1': 2, 'key2': 1}, {'key1': 2, 'key2': 2}, {'key1': 3, 'key2': 1}, {'key1': 3, 'key2': 2}]

相关问题 更多 >

    热门问题