首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有序字典需要转换为字典字典

有序字典需要转换为字典字典
EN

Stack Overflow用户
提问于 2018-08-22 20:13:05
回答 1查看 46关注 0票数 2

我有一个数据集,其中可能有n级有序字典的有序字典,现在我需要将它们全部转换为普通字典,有没有比递归搜索和转换更容易的方法。

代码语言:javascript
复制
from collections import OrderedDict
an=OrderedDict([('method', 'constant'), ('data', '1.225')])

aw=OrderedDict([('method', 'constant'), ('data', OrderedDict([('1.225','777')]))])

print dict(an)
print dict(aw)
{'data': '1.225', 'method': 'constant'}
{'data': OrderedDict([('1.225', '777')]), 'method': 'constant'}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-22 20:17:30

可能不会。您可以将递归算法封装在一个函数中:

代码语言:javascript
复制
from collections import OrderedDict

def ordered_to_regular_dict(d):
    if isinstance(d, OrderedDict):
        d = {k: ordered_to_regular_dict(v) for k, v in d.items()}
    return d

aw = OrderedDict([('method', 'constant'), ('data', OrderedDict([('1.225','777')]))])
res = ordered_to_regular_dict(aw)

# {'data': {'1.225': '777'}, 'method': 'constant'}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51966629

复制
相关文章

相似问题

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