json.loads()、json.dumps()和json.dump()、json.load()分别是两组不同用法
带s的用于数据类型的转换,不带s的用于操作文件。
json.loads()、json.dumps()概念理解
json本身是字符串,通过以下两个函数可以进行字典和字符串的转换。
因为浏览器不支持字典方式显示,如果请求过来的类型是字典,必须通过json.dumps()函数将字典转换为字符串之后,才可展示。
使用案例
json.loads():解码,将JSON格式的字符串转换为字典。
>>> import json
>>> json_str = '{"num": "66" }'
>>> dict2 = json.loads(json_str)
>>> type(json_str)
<class 'str'>
>>> type(dict2)
<class 'dict'>
json.dumps():编码,将字典转换为JSON格式的字符串。
>>> import json
>>> dict1 = {"num": "88"}
>>> json_info = json.dumps(dict1)
>>> type(dict1)
<class 'dict'>
>>> type(json_info)
<class 'str'>
>>>
json.dump()和json.load()概念理解
主要用来读写json文件函数
使用案例
import json,time
# 将字典转换为字符串并保存
def store_json(data):
with open('data.json', 'w') as f:
# 将字典转化为字符串
# json_str = json.dumps(data)
# f.write(json_str)
# 上面两句等同于下面这句
# 加载json文件并输出
def load_json():
with open('data.json','r') as f:
data = json.load(f)
return data
if __name__ == "__main__":
json_data = '{"name":"zhangsan"}'
# 函数是将json字符串转换为字典
data = json.loads(json_data)
store_json(data)
data = load_json()
print(data)