Python中JSON.dumps的strict参数遵循何种规范?
JSON.dumps中
strict参数的含义与遵循规范 问题:JSON.dumps中的strict参数含义是什么?它遵循何种规范?
Python官方文档指出,若要序列化包含未转义换行符的字符串,需将strict设为False:
若
strict为false(默认值为True),则字符串中将允许包含控制字符。此处的控制字符指字符编码在0–31范围内的字符,包括'\t'(制表符)、'\n'(换行符)、'\r'(回车符)和'\0'(空字符)。
而JSON规范(包括ECMA-404标准、JSON官方定义)明确支持使用转义序列(如\n、\r)来表示换行符这类控制字符——也就是说,当strict=True时,json.dumps()会严格遵循JSON规范,仅允许字符串中存在经过转义的控制字符,若遇到未转义的控制字符会抛出错误;只有将strict设为False,才允许直接保留字符串中的未转义控制字符,不进行转义也不报错。
内容的提问来源于stack exchange,提问作者kpeek
相关产品推荐
相关产品推荐

