时间:2021-05-22
众所周知:python json 可以转换的json字符串,但是在将其转换为字典时,出现了乱序
字典是一个散列结构,亦即他自身根据key进行排序,无法保证顺序
import jsonjsonstr = '{"username":"string","age":"int","income":"float","createdTime":"date"}'print(json.loads(jsonstr))输出结果不一致
代码打印
{'age': 'int', 'createdTime': 'date', 'username': 'string', 'income': 'float'}
控制台:
>>> import json>>> jsonstr = '{"username":"string","age":"int","income":"float","createdTime":"date"}'>>> print(json.loads(jsonstr)){'username': 'string', 'age': 'int', 'income': 'float', 'createdTime': 'date'}>>>最后采用有序字典集合:collections.OrderedDict ,二者输出保持一致
dictStr = json.loads(jsonstr,object_pairs_hook=collections.OrderedDict)
补充拓展:细数json.load和loads的区别
Python中json.load和json.loads都是实现“反序列化”,区别是:
loads针对内存对象,即将Python内置数据序列化为字串
如使用json.dumps序列化的对象d_json=json.dumps({'a':1, 'b':2}),在这里d_json是一个字串'{"b": 2, "a": 1}'
d=json.loads(d_json) #{ b": 2, "a": 1},使用load重新反序列化为dict
load针对文件句柄
如本地有一个json文件a.json则可以d=json.load(open('a.json'))
相应的,dump就是将内置类型序列化为json对象后写入文件
以上这篇python json load json 数据后出现乱序的解决方案就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
问题你想读写JSON(JavaScriptObjectNotation)编码格式的数据。解决方案json模块提供了一种很简单的方式来编码和解码JSON数据。其中
读写JSON数据问题你想读写JSON(JavaScriptObjectNotation)编码格式的数据。解决方案json模块提供给了一种很简单的方式来编码和解码
Json转化为Java对象的实例详解问题:前后端数据交互时,经常会遇到Json串与Java对象转化的问题,有的Java对象中还包含了List对象等。解决方案:引
关于本文本文主要总结网站编写以来在传递JSON数据方面遇到的一些问题以及目前采用的解决方案。网站数据库采用MongoDB,后端是Python,前端采用“半分离”
Json模块dumps、loads、dump、load函数介绍1、json.dumps()json.dumps()用于将dict类型的数据转成str,因为如果直