#json #nan #infinity #python #serde-json #deserialize-json

python-json-read-adapter

一个crate,用于处理由Python引起的JSON有效负载(NaN和无穷大)的读取适配器

1个不稳定版本

0.1.0 2018年12月19日

#2606解析器实现

Download history • Rust 包仓库 396/week @ 2024-04-06 • Rust 包仓库 194/week @ 2024-04-13 • Rust 包仓库 422/week @ 2024-04-20 • Rust 包仓库 204/week @ 2024-04-27 • Rust 包仓库 334/week @ 2024-05-04 • Rust 包仓库 420/week @ 2024-05-11 • Rust 包仓库 503/week @ 2024-05-18 • Rust 包仓库 363/week @ 2024-05-25 • Rust 包仓库 319/week @ 2024-06-01 • Rust 包仓库 248/week @ 2024-06-08 • Rust 包仓库 396/week @ 2024-06-15 • Rust 包仓库 323/week @ 2024-06-22 • Rust 包仓库 200/week @ 2024-06-29 • Rust 包仓库 291/week @ 2024-07-06 • Rust 包仓库 342/week @ 2024-07-13 • Rust 包仓库 397/week @ 2024-07-20 • Rust 包仓库

1,249每月下载量

BSD-3-Clause

9KB
134

python-json-read-adapter

此crate实现了一个Read适配器,它将无效的JSON标记NaNInfinity转换为其他标记,而不扭曲流。它通过将NaNInfinity转换为0.0来实现这一点。

这很有用,因为Python JSON库传统上会在遇到NaNInfinity值时发出无效的JSON。如果您必须支持这样的客户端,则可以使用此包装器来仍然反序列化此类JSON文档。

这只是将此解析并转换为0.0的方式,这是唯一可以以标准化的方式插入而不改变任何位置值的值。


lib.rs:

此crate实现了一个Read适配器,它将无效的JSON标记NaNInfinity转换为其他标记,而不扭曲流。它通过将NaNInfinity转换为0.0来实现这一点。

这很有用,因为Python JSON库传统上会在遇到NaNInfinity值时发出无效的JSON。如果您必须支持这样的客户端,则可以使用此包装器来仍然反序列化此类JSON文档。

这只是将此解析并转换为0.0的方式,这是唯一可以以标准化的方式插入而不改变任何位置值的值。

示例转换

以下JSON文档

{"nan":NaN,"inf":Infinity,"-inf":-Infinity}

因此转换为

{"nan":0.0,"inf":0.0     ,"-inf":-0.0     }

serde支持

如果启用了serde功能,则该crate提供了一些基本的包装器,用于围绕serde_json进行快速反序列化,并通过运行转换。

依赖关系

~0–265KB