Python学习笔记之解析json的方法分析


Posted in Python onApril 21, 2017

本文实例讲述了Python解析json的方法。分享给大家供大家参考,具体如下:

刚学习到Python中解析json的方法,觉得有必要在这里坐下笔记。

我是在python的内部环境中看的

Encoding basic Python object hierarchies

>>> import json
>>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])
'["foo", {"bar": ["baz", null, 1.0, 2]}]'
>>> print json.dumps("\"foo\bar")
"\"foo\bar"
>>> print json.dumps(u'\u1234')
"\u1234"
>>> print json.dumps('\\')
"\\"
>>> print json.dumps({"c": 0, "b": 0, "a": 0}, sort_keys=True)
{"a": 0, "b": 0, "c": 0}
>>> from StringIO import StringIO
>>> io = StringIO()
>>> json.dump(['streaming API'], io)
>>> io.getvalue()
'["streaming API"]'

Compact encoding::

>>> import json
>>> json.dumps([1,2,3,{'4': 5, '6': 7}], sort_keys=True, separators=(',',':'))
'[1,2,3,{"4":5,"6":7}]'
Pretty printing::
>>> import json
>>> print json.dumps({'4': 5, '6': 7}, sort_keys=True,
         indent=4, separators=(',', ': '))
{
  "4": 5,
  "6": 7
}

Decoding JSON::

>>> import json
>>> obj = [u'foo', {u'bar': [u'baz', None, 1.0, 2]}]
>>> json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]') == obj
True
>>> json.loads('"\\"foo\\bar"') == u'"foo\x08ar'
True
>>> from StringIO import StringIO
>>> io = StringIO('["streaming API"]')
>>> json.load(io)[0] == 'streaming API'
True

Specializing JSON object decoding::

>>> import json
>>> def as_complex(dct):
   if '__complex__' in dct:
     return complex(dct['real'], dct['imag'])
   return dct
>>> json.loads('{"__complex__": true, "real": 1, "imag": 2}',
   object_hook=as_complex)
(1+2j)
>>> from decimal import Decimal
>>> json.loads('1.1', parse_float=Decimal) == Decimal('1.1')
True

Specializing JSON object encoding::

>>> import json
>>> def encode_complex(obj):
   if isinstance(obj, complex):
     return [obj.real, obj.imag]
   raise TypeError(repr(o) + " is not JSON serializable")
>>> json.dumps(2 + 1j, default=encode_complex)
'[2.0, 1.0]'
>>> json.JSONEncoder(default=encode_complex).encode(2 + 1j)
'[2.0, 1.0]'
>>> ''.join(json.JSONEncoder(default=encode_complex).iterencode(2 + 1j))
'[2.0, 1.0]'

Python学习笔记之解析json的方法分析

Python学习笔记之解析json的方法分析

或者也可以去看官方文档,自己能学到东西才是真的!

Python 相关文章推荐
Python Deque 模块使用详解
Jul 04 Python
跟老齐学Python之不要红头文件(2)
Sep 28 Python
Python json模块使用实例
Apr 11 Python
详解 Python 与文件对象共事的实例
Sep 11 Python
python模块smtplib学习
May 22 Python
详解Python进阶之切片的误区与高级用法
Dec 24 Python
Python目录和文件处理总结详解
Sep 02 Python
Pandas操作CSV文件的读写实现方法
Nov 13 Python
解决django后台管理界面添加中文内容乱码问题
Nov 15 Python
Python列表解析操作实例总结
Feb 26 Python
详解基于Scrapy的IP代理池搭建
Sep 29 Python
Python爬虫基础讲解之请求
May 13 Python
Python正则抓取网易新闻的方法示例
Apr 21 #Python
Python中shape计算矩阵的方法示例
Apr 21 #Python
Python使用正则表达式抓取网页图片的方法示例
Apr 21 #Python
用python找出那些被“标记”的照片
Apr 20 #Python
python实现12306火车票查询器
Apr 20 #Python
Python编程修改MP3文件名称的方法
Apr 19 #Python
Python实现将罗马数字转换成普通阿拉伯数字的方法
Apr 19 #Python
You might like
PHP入门速成(2)
2006/10/09 PHP
PHP文件上传判断file是否己选择上传文件的方法
2014/11/10 PHP
PHP截取IE浏览器并缩小原图的方法
2016/03/04 PHP
用PHP的socket实现客户端到服务端的通信实例详解
2017/02/04 PHP
JavaScript 动态生成方法的例子
2009/07/22 Javascript
限制textbox或textarea输入字符长度的JS代码
2013/10/16 Javascript
tangram框架响应式加载图片方法
2013/11/21 Javascript
jquery实现tr元素的上下移动示例代码
2013/12/20 Javascript
使用jquery实现鼠标滑过弹出更多相关信息层附源码下载
2015/11/23 Javascript
Javascript的表单验证-初识正则表达式
2016/03/18 Javascript
Ext JS动态加载JavaScript创建窗体的方法
2016/06/23 Javascript
AngularJs Dependency Injection(DI,依赖注入)
2016/09/02 Javascript
纯原生js实现贪吃蛇游戏
2020/04/16 Javascript
NodeJS安装图文教程
2018/04/19 NodeJs
解决vue热替换失效的根本原因
2018/09/19 Javascript
JS实现图片拖拽交换效果
2018/11/30 Javascript
原生js实现Flappy Bird小游戏
2018/12/24 Javascript
详解Vue.js和layui日期控件冲突问题解决办法
2019/07/25 Javascript
javaScript 实现重复输出给定的字符串的常用方法小结
2020/02/20 Javascript
Python实现二分法算法实例
2015/02/02 Python
Python操作CouchDB数据库简单示例
2015/03/10 Python
Django学习笔记之Class-Based-View
2017/02/15 Python
Python正则匹配判断手机号是否合法的方法
2020/12/09 Python
Python控制台实现交互式环境执行
2020/06/09 Python
python 如何调用远程接口
2020/09/11 Python
Python 开发工具通过 agent 代理使用的方法
2020/09/27 Python
python实现图片转字符画
2021/02/19 Python
测量实习生自我鉴定
2013/09/19 职场文书
女大学生自我鉴定
2013/12/09 职场文书
小区文明倡议书
2014/05/16 职场文书
2016年教师政治思想表现评语
2015/12/02 职场文书
2016年学校综治宣传月活动总结
2016/03/16 职场文书
24句精辟的现实社会语录,句句扎心,道尽人性
2019/08/29 职场文书
Python获取百度热搜的完整代码
2021/04/07 Python
Python中的变量与常量
2021/11/11 Python
mysql数据插入覆盖和时间戳的问题及解决
2022/03/25 MySQL