【发布时间】:2019-10-22 03:51:39
【问题描述】:
我希望将一些 JSON 解析成字典,但需要保留字典特定部分的顺序。
我知道我可以将整个 JSON 文件解析为有序字典(例如 Can I get JSON to load into an OrderedDict?),但这并不是我想要的。
{
"foo": "bar",
"columns":
{
"col_1": [],
"col_2": []
}
}
在此示例中,我希望将整个文件解析为字典,其中“列”部分为OrderedDict。是否有可能使用 JSON 解析工具获得这种粒度,同时保证始终保留顺序?谢谢!
【问题讨论】:
-
不知道为什么你不希望完整的结果是 OrderedDict,但如果你不太关心效率,你总是可以这样做:
dict(json.loads("YOUR INPUT", object_pairs_hook=OrderedDict)):-) -
@BartVanLoon 谢谢!我可能对整个事情都很好
OrderedDict。这会保证columns的顺序,还是最终会成为一个OrderedDict和一个无序字典columns的孩子?如果这有意义的话。 -
不,它会一直是 OrderedDict
-
@BartVanLoon 感谢所有帮助!很棒的信息。我对 Python 有点陌生,所以感谢您的耐心等待 :)
标签: python json dictionary ordereddictionary