非如此简单的JSON编码器/解码器
项目描述
nssjson 是一个(不那么)简单、快速、完整、正确且可扩展的 JSON 编码器和解码器,适用于 Python 2.5+ 和 Python 3.3+。它是纯 Python 代码,没有依赖项,但包含一个可选的 C 扩展,以提高速度。
nssjson 是 simplejson 的一个分支,满足我对一个高性能 JSON 编码器/解码器的需求,它可以处理 Python 的 datetime 和 UUID,即使使用一个显然非标准的且存在缺陷的启发式方法,该方法 未包含 在原始产品的范围内。
实际上,区别在于,开箱即用,您就有
>>> import datetime, uuid
>>> import nssjson
>>> now = datetime.datetime.now()
>>> uid = uuid.uuid1()
>>> nssjson.loads(
... nssjson.dumps([uid, now], iso_datetime=True, handle_uuid=True),
... iso_datetime=True, handle_uuid=True) == [uid, now]
True
更改
0.7 (2015-08-07)
可选序列化/反序列化 UUID
0.6 (2015-05-31)
避免 int/long/float 子类的 __str__() 和/或 __repr__() 方法实现的 JSON 输出损坏
0.5 (2014-12-21)
修复编码字典项时发生的内存泄漏
重写 load() 和 dump() 签名
删除 Sphinx 文档
0.4 (2014-06-28)
完成对 raw_decode() 负索引参数的修复
修复 C 编码器初始化
捕获 C 编码器中对无效项_sort_key 参数的调用
0.3 (2014-04-16)
在发布时更新 nssjson/__init__.py 中的版本
捕获C scan_once()函数的负索引参数,模仿 http://hg.python.org/cpython/rev/ef52ae167555
0.2 (2014-03-22)
删除Anatoly Techtonik注意到的无效代码
使用UTC时区的interned实例,而不是将其作为参数传递给函数/构造函数
0.1 (2014-03-19)
simplejson 3.3.3的分支
添加对Python日期时间、日期和时间的支持(见 https://github.com/simplejson/simplejson/issues/86 和 https://github.com/simplejson/simplejson/pull/89)
修复与Python 3.4 unittests的兼容性
项目详情
nssjson-0.7.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4970f7742596df652f287c01c96ed397b4ce17a2e38d4947f6423d2c61dbdb01 |
|
MD5 | 996aff07203b52fcf19fa21397c7d3b1 |
|
BLAKE2b-256 | 99e91f4b50de2dcd4a72ec1e31dc03c781aca33abe71c221e975dde1e1e65e4e |