首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将元组列表合并到字典中

将元组列表合并到字典中
EN

Stack Overflow用户
提问于 2018-02-22 20:05:12
回答 1查看 52关注 0票数 0

我有以下元组列表

代码语言:javascript
复制
[
('A-1', 'B-1', 'C'), 
('A-1', 'B-2', 'D'), 
('A-1', 'B-3', 'E'), 
('A-1', 'B-4', 'F'), 
('A-1', 'B-5', 'G')
]

我想创建以下字典字典:

代码语言:javascript
复制
{A:{"A-1":{"B":{"B-1":"C","B-2":"D","B-3":"E","B-4":"F","B-5":"G"}}}}

最好的选择是什么?我必须从bbdd中提取数据并生成JSON文件,因此这个转换将被多次执行,这是最有效的解决方案

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-22 23:40:40

你需要学会如何提问。你应该让我们看看你试过什么和做了什么。你应该试着自己写算法...

幸运的是,我正在工作,所以我为你破解了一个解决方案..试一试,看看它是否有效:

代码语言:javascript
复制
def convert_function(input):
    output = {}
    for val in input:
        first_dict = output.get(val[0][0], {})
        second_dict = first_dict.get(val[0], {})
        third_dict = second_dict.get(val[1][0], {})

        third_dict[val[1]] = val[2]
        second_dict[val[1][0]] = third_dict
        first_dict[val[0]] = second_dict

        output[val[0][0]] = first_dict
    return output

input = [
    ('A-1', 'B-1', 'C'), 
    ('A-1', 'B-2', 'D'), 
    ('A-1', 'B-3', 'E'), 
    ('A-1', 'B-4', 'F'), 
    ('A-1', 'B-5', 'G')
]

print convert_function(input)

祝你下次好运!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48926974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档