JSON

Python学习笔记之解析json的方法分析【站长博客网】

字号+ 作者:H5之家 来源:H5之家 2017-05-10 17:07 我要评论( )

这篇文章主要介绍了Python解析json的方法,结合实例形式分析了常见的Python解析与转换json格式数据相关操作技巧,需要的朋友可以参考下

相关推荐:    

  • python 遍历字符串(含汉字)实例详解
  •     
  • python模拟登录并且保持cookie的方法详解
  •     
  • python 容器总结整理
  •     
  • JSON Web Tokens的实现原理
  •     
  • 详解Python中最难理解的点-装饰器
  •     
  • Python可变参数用法实例分析
  •  

    本文实例讲述了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]'

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

    PS:关于json操作,这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

    在线JSON代码检验、检验、美化、格式化工具:

    JSON在线格式化工具:

    在线XML/JSON互相转换工具:

    json代码在线格式化/美化/压缩/编辑/转换工具:

    在线json压缩/转义工具:

    更多Python相关内容感兴趣的读者可查看本站专题:《Python操作json技巧总结》、《Python编码操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

    希望本文所述对大家Python程序设计有所帮助。

    Tag标签:  JSON  Python  解析  

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • iis支持json 配置iis支持json格式的文件教材

      iis支持json 配置iis支持json格式的文件教材

      2017-05-10 12:00

    • 如何解析DELPHI XE5服务器返回的JSON数据(翻译)及中文乱码

      如何解析DELPHI XE5服务器返回的JSON数据(翻译)及中文乱码

      2017-05-10 11:15

    • Android中使用Gson解析JSON数据的两种方法

      Android中使用Gson解析JSON数据的两种方法

      2017-05-08 18:01

    • path解析json方便可靠

      path解析json方便可靠

      2017-05-08 10:01

    网友点评