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数据的主要内容,如果未能解决你的问题,请参考以下文章