Python基础:python 将dict按key插入顺序输出

有字符串 c = '{"b":1, "a":2}' ,目标是将c转换成dict后,遍历dict,输出的key的顺序是b、a。而不是a、b。

import json
from collections import OrderedDict
 
c ='{"b":1, "a":2}'
 
c = json.loads(c, object_pairs_hook=OrderedDict)
 
for key in c:
    print key
总结:

str转化为 json 格式同时保存其已有顺序需要在 json.loads() 中使用参数 object_pairs_hook。

相应的 在存储 c的时候就使用 OrderedDict 而非用默认的 dict。

from collections import OrderedDict
c = OrderedDict()
c['b'] = 1
c['a'] = 2
print(c, type(c))
c = json.dumps(c)
print(c, type(c))
附:json.dumps:作用是将字典转换为字符串。

       json.loads: 作用是将字符串转换为json(dict)。
--------------------- 
作者:carryyyy 
来源:CSDN 
原文:https://blog.csdn.net/qq_35462323/article/details/82502122 
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/meng19910117/article/details/83539827