我有一个多值字典和唯一键,我需要为每个值使用一个键
data = {
"id": [123,456,546,311],
"info": ["info1","info2","info3"],
.
.
.
}
需要此答案:
data = {
"id": [123],
"id": [456],
"id": [546],
"id": [311]
"info":["info1"],
"info":["info2"],
"info":["info3"]
}
先谢谢
答案 0 :(得分:0)
在一个词典中,您不能多次拥有相同的键(如何通过键访问它?)。
您可以改为提取一个元组列表,如下所示:
exploded = [(key, value) for key, values in data.items() for value in values]
输出:
[('id', 123), ('id', 456), ('id', 546), ('id', 311),
('info', 'info1'), ('info', 'info2'), ('info', 'info3')]
答案 1 :(得分:0)
正如奥尔文·罗格(Olvin Roght)在评论中所说,据我所知,字典中不可能有非唯一键。在官方的Python文档中,写了以下内容:
“最好将字典视为一组键:值对,并要求键是唯一的(在一个字典中)。”