`

python simplejson模块的使用方法

阅读更多
python安装:easy_install simplejson
导入模块:

import simplejson as json

几个主要函数:dump,dumps,load,loads 带s跟不带s的区别是 带s的是对 字符串的处理,而不带 s的是对文件对像的处理。
json化python字典数据:

json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}]) 

'["foo", {"bar": ["baz", null, 1.0, 2]}]' 

 print json.dumps("\"foo\bar") 
 "\"foo\bar"

sort_keys设置是否排序字典:

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编码数据导向到此文件对象:

json.dump(['streaming API'], io)

取得文件流对象的内容:

io.getvalue() 
'["streaming API"]'

压缩编码:

import simplejson as json 
json.dumps([1,2,3,{'4': 5, '6': 7}], separators=(',',':')) 
'[1,2,3,{"4":5,"6":7}]'

美化打印:

import simplejson as json 
s = json.dumps({'4': 5, '6': 7}, sort_keys=True, indent='    ') 
print '\n'.join([l.rstrip() for l in  s.splitlines()]) 
    "4": 5, 
    "6": 7 
}

解析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

指定json解析后的对象:

import simplejson as 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

指定编码对象的格式:

import simplejson as 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中的simplejson模块

    python中的simplejson模块

    详解Python使用simplejson模块解析JSON的方法

    主要介绍了Python使用simplejson模块解析JSON的方法,实例代码基于Pyhton2.x版本,文中最后还附了关于simplejson模块的一些性能放面的讨论,需要的朋友可以参考下

    simplejson-3.5.2.zip

    simplejson模块的安装包

    Python示例-从基础到高手PDF

    目录 第1章 Python 处理 cassandra 升级后的回滚脚本 第 2 章 多套方案来提高 ...第 29 章 python simplejson 模块浅谈 第 30 章 python Howto 之 logging 模块 第 31 章 Python FAQ3-python 中 的原始(raw)字符串

    simplejson-3.6.5

    simplejson模块是python的一个模块,主要用于将python数据类型转换为json类型。

    linux_simplejson-3.13.2.tar.gz

    在python中,我理解的simplejson模块就是主要用于将python数据类型转换为json类型。 json文件类型: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。...

    详解python 3.6 安装json 模块(simplejson)

    JSON 相关概念: 序列化(Serialization):将对象的状态信息转换为可以存储或可以通过网络传输...python2.6版本开始加入了JSON模块,python的json模块序列化与反序列化的过程分别是encoding和decoding。 encoding:把

    SimpleJson

    simplejson模块主要用于将Python数据类型和json类型互相转换。 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成。JSON采用独立于语言的文本格式,但是...

    ansible作为python模块库使用的方法实例

    ansible是一个python package,是个完全的unpack and play软件,对客户端唯一的要求是有ssh有python,并且装了...下面这篇文章就给大家主要介绍了ansible作为python模块库使用的方法实例,需要的朋友可以参考借鉴。

    simplejson-3.17.0-cp36-cp36m-win32.whl

    simplejson json数据和字符串的转换及处理可以使用simplejson模块,pyecharts 要用到

    python计算机视觉编程

    1.3.7 使用pickle模块 1.4 scipy 1.4.1 图像模糊 1.4.2 图像导数 1.4.3 形态学:对象计数 1.4.4 一些有用的scipy模块 1.5 高级示例:图像去噪 练习 代码示例约定 第2章 局部图像描述子 2.1 ...

    whichpkg:找到特定python模块的路径

    哪一个找到特定python模块的路径如果您像我一样,总是需要打开并查看已安装软件包的源代码,并且它比我只想确定它们的路径所需的过程更多。安装$ pip install whichpkg 用法$ whichpkg simplejson/Users/matt/....

    RESTfulAPIsPython

    01 先决条件参加入门或观看录音安装了Python和相关组件描述在Python中使用docopt模块在Python中使用simplejson模块和json数据在Python中使用请求模块查看RESTful方法(GET,POST,PUT,PATCH,DELETE) 日期现场直播...

    loggly-python:Loggly 的 Python 接口

    simplejson Python 模块(如果 json 模块不可用) 安装 使用提供的setup.py安装: sudo setup.py install 或者从 PyPI 安装: sudo easy_install loggly 图书馆使用 查看示例,包含在scripts/ 脚本使用 设置您的...

    py-yajl:py-yajl 为 Yajl JSON 编码器解码器库提供 Python 绑定

    虽然jsonlib 、 simplejson和 `cjson 等模块已经存在,但 py-yajl 旨在提供对 Yajl 极快的字符串和流解析工具的 pythonic 访问。 py-yajl 完全支持 Python 2.4-2.6 和 Python 3。构建 py-yajl 请参考BUILDING....

    vagrant-skyline-puppet:使用 redis 和 skyline 构建 centos7 vm 的流浪配置(来自 etsy)

    python-simplejson python-unittest2 Python模拟 海湾合作委员会 布拉斯 blas-devel lapack-devel gcc-c++ Python (pip) 包 麻木的 scipy 熊猫 帕齐 jinja2 烧瓶 这很危险 工匠 标记安全 派兹 python-...

    BeeCli是一款基于开源PoC框架Beebeeto-framework进行开发的程序

    使用BeeCli可以很方便的对本地PoC模块进行搜索,通过Google Hacking语法批量抓取测试目标,并调用扫描功能对测试目标进行批量测试或者攻击。 Installation 克隆BeeCli项目到本地: git clone ...

    ffarchive:一组脚本,用于归档和提供发布到朋友源提要的内容

    还需要 simplejson 和 sqlite3 python 模块。 当前实现的功能 从源和相关媒体下载所有条目 从下载的数据生成一些简单的统计信息: Statistics for the band-horse-boat-names feed on friendfeed: total entries...

Global site tag (gtag.js) - Google Analytics