python中json文件创建_Python中几种常用json库性能对比

16687a31d9f5267fd9c731dd3f950cef.png

无论是在Web开发还是服务端开发,json格式都是相当常见的数据传输格式,一般情况下我们对于json的解析构造性能并不需要太多关心,除非是数据量很大或者性能要求较高的系统交互中。

在Python中json的序列化与反序列化有很多库,具体选择使用哪一个,或者哪一个速度更快呢?下面我们对5种常见的库进行对比:

  • ujson
  • yajl
  • cjson
  • simplejson
  • stdlib json

测试方式:

fe7d9b98d80ca2c0d1d7dd65f7e505b6.png

测试结论:

  • 1.stdlib json也就是内置的json.dumps外,其他都是第三方包。
  • 2.数据量较少时,速度几乎没有区别,无所谓选择哪一个。
  • 3.数据量大的情况下,ujson的总体表现最好,但序列化不如yajl
原文来自微信公众号:技术90分,欢迎订阅,获取更多技术文章、资源分享 

在django中,如果只是response一个json对象,可以直接使用JsonResonse

用法为:

>>> from django.http import JsonResponse>>> response = JsonResponse({'foo': 'bar'})>>> response.content'{"foo": "bar"}'

默认采用内置stdlib方式进行json格式化后返回。如果数据不多,着实方便(django1.7引入)


以上测试代码来自rtyler,在其基础上新增了ujson

import timeimport pickleimport yajltry: import cjsonexcept ImportError: cjson = Nonetry: import simplejsonexcept ImportError: simplejson = Nonetry: import ujsonexcept ImportError: ujson = Nonetry: import jsonexcept ImportError: json = Nonedefault_data = { "name": "Foo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值