6-2 如何读写json数据

Posted 石中玉smulngy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6-2 如何读写json数据相关的知识,希望对你有一定的参考价值。

 

通过查看help(json.dump)和help(json.dumps)帮助信息,dump是将转换格式到文件对象,而dumps转换格式到字符串。

一、Json.dumps()

Json.dumps()将python对象转为json格式。

1、将列表转为json格式,

>>> l = [1,2,\'abc\',{\'name\':\'bob\',\'age\':13}]
>>> json.dumps(l)
\'[1, 2, "abc", {"age": 13, "name": "bob"}]\'

2、将字典转为json

>>> d = {\'b\':None,\'a\':5,\'c\':\'abc\'}
>>> json.dumps(d)
\'{"a": 5, "c": "abc", "b": null}\'

转换后与转换前基本一致,但python的None要转为json的null

Json.dumps()转为json后的分隔符默认为’, ’或’: ’(逗号空格或冒号空格)。可以通过separators指定分隔符,去掉其中的空格,空格做为显示时好看一些,做传输时多传输了。

>>> json.dumps(l,separators=[\',\',\':\'])
\'[1,2,"abc",{"age":13,"name":"bob"}]\'

将转换结果排序使用 sort_keys参数

>>> json.dumps(d,sort_keys=True)
\'{"a": 5, "b": null, "c": "abc"}\'

二、json格式数据转为python对象

两个函数为load()和loads()

>>> d2 = json.loads(\'{"a": 5, "c": "abc", "b": null}\')
>>> d2
{u\'a\': 5, u\'c\': u\'abc\', u\'b\': None}

dump和load对文件进行操作

>>> with open(r"C:\\视频\\python高效实践技巧笔记\\6数据编码与处理相关话题\\jsondemo.txt",\'wb\') as f:
    json.dump(l, f)
    json.dump(d, f)

>>> with open(r"C:\\视频\\python高效实践技巧笔记\\6数据编码与处理相关话题\\jsondemo2.txt",\'w\') as f:
    json.dump(l, f)
    json.dump(d, f)

 

以上是关于6-2 如何读写json数据的主要内容,如果未能解决你的问题,请参考以下文章

如何从片段中的 JSON 响应中的对象获取数据

实用代码片段将json数据绑定到html元素 (转)

如何读写json文件

python 读写json数据

java如何读写json文件

golang的xorm如何将[]map[string][]byte 格式的数据序列化成json输出