Python 使用 json.dumps 将字典转 JSON 时如何保留字符串中的双引号
在 Python 中使用 json.dumps 函数将字典转换为 JSON 字符串时,有时会遇到字符串中的双引号被转义成 \' 的情况。例如,以下代码:
import json
d = {'name': 'John', 'age': 25, 'description': 'He said, 'I am happy.''}
json_str = json.dumps(d)
print(json_str)
输出结果为:
{'name': 'John', 'age': 25, 'description': 'He said, \'I am happy.\''}
可以看到,description 中的双引号被转义成了 \'。
为了保留字符串中的双引号,可以在调用 json.dumps() 函数时,指定参数 ensure_ascii=False,这样就可以保留字典字符串的双引号。
例如:
import json
d = {'name': 'John', 'age': 25, 'description': 'He said, 'I am happy.''}
json_str = json.dumps(d, ensure_ascii=False)
print(json_str)
输出结果为:
{'name': 'John', 'age': 25, 'description': 'He said, 'I am happy.''}
现在 description 中的双引号被保留了下来。
注意: ensure_ascii=False 会导致输出的 JSON 字符串中包含非 ASCII 字符,如果您的 JSON 字符串需要在 ASCII 环境中使用,请不要使用该参数。
原文地址: https://www.cveoy.top/t/topic/nCP4 著作权归作者所有。请勿转载和采集!