Python解析json
来源:互联网 发布:html5简单小游戏源码 编辑:程序博客网 时间:2024/05/21 07:51
刚学习到Python中解析json的方法,觉得有必要在这里坐下笔记。
我是在python的内部环境中看的
<span style="font-family: Arial, Helvetica, sans-serif;"> </span><span style="font-family: Arial, Helvetica, sans-serif;">Encoding basic Python object hierarchies</span>
<span style="font-family: Arial, Helvetica, sans-serif;"> >>> import json</span>
>>> 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]'
或者也可以去看官方文档,自己能学到东西才是真的!
0 0
- python-Json模块【解析Json】
- python-Json模块【解析Json】
- python-Json模块【解析Json】
- python-Json模块【解析Json】
- python解析json:json模块
- python解析json
- 【python】解析json
- python解析json基础
- python微信四json解析
- python解析json
- python解析json
- Python解析Json
- python解析json文件
- Python JSON 解析
- Python解析json
- python解析json文件
- Python json解析记录
- python解析json数据
- 简单JNI编程实现
- 大话设计模式之面向对象基础篇(二)
- PRML 课后题答案 第一章 1.1
- 126.Oracle数据库SQL开发之 数据库对象——PLSQL中使用对象
- 南大软院大神养成计划第五天
- Python解析json
- (第八周项目2)建立链串的算法库
- Linux之——基础命令
- 127.Oracle数据库SQL开发之 数据库对象——类型继承
- KVO,NSNotification,delegete及block区别
- 初探内存管理
- 128.Oracle数据库SQL开发之 数据库对象——用子类型对象代替超类型对象
- Space Replacement
- (第八周项目3)顺序串算法