JSON(javaScript Object Notation,JS对象标记)是一种轻量级的数据交换格式。它基于ECMAScript(w3c组织制定的JS规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。后缀为.json的文件通常为json配置文件。
{
"xdd":[
{
"name":"tom",
"age": 18
},
{
"name":"python",
"age": 19
}
],
"total":2
}
json模块中的方法 | 用途 |
---|---|
dumps | json编码 |
dump | json编码并存入文件 |
loads | json解码 |
load | json解码,从文件读取数据 |
import json
arr = {"name":"tom","age":20,"interest":("music","movie"),"class":["python"]}
#序列化转json格式
js = json.dumps(arr)
print(type(js),js)
#反序列化
arr2 = json.loads(js)
print(type(arr2),arr2)
#序列化存储
with open("xdd.json","w") as f:
json.dump(arr,f)
#读取json文件
with open("xdd.json","r") as f:
print("读取json文件",f.read())
#反序列化json文件
with open("xdd.json","r") as f:
arr3 = json.load(f)
print("反序列化arr3=",arr3)
保证字典中的顺序 和 Json 的顺序一样, 不能改变
import json
from collections import OrderedDict
# 将json格式字符串输出原有顺序
json.loads(str,object_pairs_hook=OrderedDict)