Py之simplejson:simplejson库的简介、安装、使用方法之详细攻略
目录
simplejson库的简介
simplejson是一个简单、快速、完整、正确和可扩展的JSON<http://JSON.org>编码器和解码器,用于Python 3.3+,并支持Python 2.5+。它是纯Python代码,没有依赖关系,但是包含了一个可选的C扩展,可以大大提高速度。
simplejson是Python附带的json库的外部维护开发版本(从2.6开始)。此版本使用最新的Python3.8进行测试,并保持与Python3.3+和传统Python2.5-Python2.7版本的向后兼容性。
编码器可以专门用于在任何情况下提供序列化,而不需要被序列化对象的任何特殊支持(有点像pickle)。这最好使用默认的kwarg to dump来完成。
解码器可以处理任何指定编码(默认为UTF-8)的传入JSON字符串。它还可以专门用于使用object_hook或object_pairs_hook kwargs后处理JSON对象。这对于实现JSON-RPC之类的协议尤其有用,这些协议的类型系统比JSON本身更丰富。
对于那些需要维护遗留系统的人来说,python2.2分支中有一个非常古老的simplejson分支,它支持python2.2。这是基于一个非常旧的simplejson版本的,不需要维护,只能作为最后的手段使用。
simplejson的最新文档可以在线阅读:https://simplejson.readthedocs.io/
simplejson库的安装
pip install simplejson
simplejson库的使用方法
1、基础用法
def log_json_stats(stats):
"""
Logs json stats.
Args:
stats (dict): a dictionary of statistical information to log.
"""
stats = {
k: decimal.Decimal("{:.6f}".format(v)) if isinstance(v, float) else v
for k, v in stats.items()
}
json_stats = simplejson.dumps(stats, sort_keys=True, use_decimal=True)
logger = get_logger(__name__)
logger.info("json_stats: {:s}".format(json_stats))