概念:一种保存数据的格式
作用:可以保存本地的json文件,也可以将json串进行传输,
通常将json称为轻量级的传输方式
json文件组成:
{} 代表对象(字典)
[] 代表列表
: 代表键值对
, 分隔两个部分
json模块主要有loads(),load(),dumps(),dump()四个函数
以下举例解释各个函数的用法:
1.json.loads() : 将json格式的字符串转为python数据类型的对象
import json
jsonStr = '{"name":"yang", "age":18, "hobby":["money","power","girl"], "parames":{"a":1,"b":2}}'
print(type(jsonStr)) # 输出<class 'str'>
# 将json格式的字符串转为python数据类型的对象
jsonData = json.loads(jsonStr)
print(jsonData)
print(type(jsonData)) # 字典 输出<class 'dict'>
print(jsonData["hobby"])
2.json.dumps() : 将python数据类型的对象转为json格式的字符串
# 将python数据类型的对象转为json格式的字符串
jsonData2 = {"name":"yang", "age":18, "hobby":["money","power","girl"], "parames":{"a":1,"b":2}}
print("data2 = ", type(jsonData2)) # 输出<class 'dict'>
jsonStr2 = json.dumps(jsonData2)
print(jsonStr2)
print(type(jsonStr2)) # 输出<class 'str'>
3.json.load() : 读取本地的json文件
# 读取本地的json文件
path1 = r"E:\caidanJson.json"
with open(path1, "rb") as f:
data = json.load(f)
print(data)
print(type(data)) # 输出 <class 'dict'>
4.json.dump() : # 写本地json
# 写本地json
path2 = r"E:\test.json"
jsonData3 = {"name":"yang", "age":18, "hobby":["money","power","girl"], "parames":{"a":1,"b":2}}
with open(path2, "w") as f:
json.dump(jsonData3, f)