讲解python中操作json需要注意的地方
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了讲解python中操作json需要注意的地方,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2066字,纯文字阅读大概需要3分钟。
内容图文
![讲解python中操作json需要注意的地方](/upload/InfoBanner/zyjiaocheng/431/277e94a9c4874ff6834986bb42050066.jpg)
python操作json的方法有
json.dumps
——将json对象(字典)转换为字符串对象
json.loads
——将字符串对象转换为json对象(字典)
如果定义json对象
jsonstring1={"results":[{"id":"1","name":"\u9ed8\u8ba4\u5206\u7ec4","policy":"4","timer_scan_setting":"{\"last\":\"10.29.13\",\"setting\":\"fulldisk\",\"type\":\"day\",\"hour\":\"13\"}"}, {"id":"2","name":"\u6d4b\u8bd5\u7684","policy":"1","timer_scan_setting":"{\"last\":\"10.29.15\",\"setting\":\"fulldisk\",\"type\":\"day\",\"hour\":\"15\"}"},{"id":"4","name":"\u4ea7\u54c1\u7ec4","policy":"3","timer_scan_setting":"{\"last\":\"10.8.15\",\"setting\":\"disable\"}"}]}
可以直接按json操作,比如
print jsonstring1.keys() print jsonstring1['results'][0]['policy']
也可以转个360度再操作
jsonstring1=json.dumps(jsonstring1) jsonstring1=json.loads(jsonstring1) print jsonstring1.keys() print jsonstring1['results'][0]['policy']
但是如果定义字符串对象就要小心了
jsonstring2='''{"results":[{"id":"1","name":"\u9ed8\u8ba4\u5206\u7ec4","policy":"4","timer_scan_setting":"{\"last\":\"10.29.13\",\"setting\":\"fulldisk\",\"type\":\"day\",\"hour\":\"13\"}"}, {"id":"2","name":"\u6d4b\u8bd5\u7684","policy":"1","timer_scan_setting":"{\"last\":\"10.29.15\",\"setting\":\"fulldisk\",\"type\":\"day\",\"hour\":\"15\"}"},{"id":"4","name":"\u4ea7\u54c1\u7ec4","policy":"3","timer_scan_setting":"{\"last\":\"10.8.15\",\"setting\":\"disable\"}"}]}'''
这个只是对上面的json对象加了三引号转为一个字符串,所以理论上可以直接loads之后就按json操作
json.loads(jsonstring2)
但是实际却报错了,原因是因为大括号前后的双引号没有去掉,网上很多在线的json格式化工具对于这些双引号不会报错,但是python会,而定义json对象时加了双引号操作却没报错,是因为不加里面的内容会被转义,所以千万不能完全相信网上的json格式校验工具。
总结
【相关推荐】
1. Python免费视频教程
2. Python基础入门教程
3. Python面向对象视频教程
以上就是讲解python中操作json需要注意的地方的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是互联网集市为您收集整理的讲解python中操作json需要注意的地方全部内容,希望文章能够帮你解决讲解python中操作json需要注意的地方所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。