国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python json load json 數據后出現亂序的解決方案

瀏覽:85日期:2022-08-05 18:07:29

眾所周知: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 數據后出現亂序的解決方案就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 罗山县| 修武县| 清镇市| 六盘水市| 巫溪县| 迁西县| 余干县| 法库县| 许昌县| 沙坪坝区| 瓦房店市| 土默特左旗| 横峰县| 开封县| 呼和浩特市| 曲水县| 宜兰市| 钦州市| 长兴县| 分宜县| 广河县| 海南省| 星子县| 华坪县| 萨迦县| 如东县| 永年县| 墨竹工卡县| 麻栗坡县| 阳城县| 澄城县| 上饶县| 崇义县| 瑞昌市| 锡林浩特市| 昭通市| 兴国县| 邹城市| 苗栗市| 吉安市| 石门县|