Python中的第三方JSON库怎么用 |
您所在的位置:网站首页 › 12306注册一直失败 › Python中的第三方JSON库怎么用 |
Python中的第三方JSON库怎么用
发布时间:2023-04-12 09:59:47
来源:亿速云
阅读:98
作者:iii
栏目:编程语言
这篇文章主要介绍了Python中的第三方JSON库怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中的第三方JSON库怎么用文章都会有所收获,下面我们一起来看看吧。 orjson常用方法 orjson支持3.7到3.10所有版本64位的Python,本文演示对应的orjson的版本为3.7.0,直接使用pip install -U orjson即可完成安装。下面我们来对orjson中的常用方法进行演示: 1. 序列化与原生json库类似,我们可以使用orjson.dumps()将Python对象序列化为JSON数据,注意,略有不同的是,orjson序列化的结果并不是str型而是bytes型,在下面的例子中,我们对包含一千万个简单字典元素的列表进行序列化,orjson与json库的耗时比较如下: 将JSON数据转换为Python对象的过程我们称之为反序列化,使用orjson.loads()进行操作,可接受bytes、str型等常见类型,在前面例子的基础上我们添加反序列化的例子: 在orjson的序列化操作中,可以通过参数option来配置诸多额外功能,常用的有: (1) OPT_INDENT_2 通过配置option=orjson.OPT_INDENT_2,我们可以为序列化后的JSON结果添加2个空格的缩进美化效果,从而弥补其没有参数indent的不足: (2) OPT_OMIT_MICROSECONDS orjson.dumps()可以直接将Python中datetime、time等标准库中的日期时间对象转换成相应的字符串,这是原生json库做不到的,而通过配置option=orjson.OPT_OMIT_MICROSECONDS,可以将转换结果后缀的毫秒部分省略掉: (3) OPT_NON_STR_KEYS 当需要序列化的对象存在非数值型键时,orjson默认会抛出TypeError错误,这时需要配置option=orjson.OPT_NON_STR_KEYS来强制将这些键转换为字符型: (4) OPT_SERIALIZE_NUMPY orjson的一大重要特性是其可以将包含numpy中数据结构对象的复杂对象,兼容性地转换为JSON中的数组,配合option=orjson.OPT_SERIALIZE_NUMPY即可: (5) OPT_SERIALIZE_UUID 除了可以自动序列化numpy对象外,orjson还支持对UUID对象进行转换,在orjson 3.0之前的版本中,需要配合option=orjson.OPT_SERIALIZE_UUID,而本文演示的3.X版本则无需额外配置参数: (6) OPT_SORT_KEYS 通过配合参数option=orjson.OPT_SORT_KEYS,可以对序列化后的结果自动按照键进行排序: (7) 组合多种option 当你的序列化操作需要涉及多种option功能时,则可以使用|运算符来组合多个option参数即可: 当你需要序列化的对象中涉及到dataclass自定义数据结构时,可以配合orjson.OPT_PASSTHROUGH_DATACLASS,再通过对default参数传入自定义处理函数,来实现更为自由的数据转换逻辑,譬如下面简单的例子中,我们可以利用此特性进行原始数据的脱敏操作: 类似的,针对datetime类型数据,我们同样可以配合OPT_PASSTHROUGH_DATETIME和自定义default函数实现日期自定义格式化转换: 关于“Python中的第三方JSON库怎么用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Python中的第三方JSON库怎么用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注亿速云行业资讯频道。 推荐阅读: 如何从多方面了解Python代码性能优化 Python 的并发分布式框架是怎样的免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:[email protected]进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。 python json 上一篇新闻:怎么利用Python开发App 下一篇新闻:Python怎么获取旅游景点信息及评论并作词云、数据可视化 猜你喜欢 怎么使用Python3.8 并发编程中Future机制的示例分析 Python陷阱有哪些 Java线程没有Running状态的原因 怎样通过Python实现导弹自动追踪 golang中goexit的使用方法介绍 如何用Python编程借助现有量化平台编写股票交易策略和回测分析 Java多线程和进程的区别 .NET中怎么操作微信SDK Python如何添加类型标注 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |