Python中使用json.loads解析包含\n的字符串报错,示例代码如下:
import json, pprint
if __name__ == '__main__':
json_str = '{\"id\":\"1\", \"content\": \"line1\nline2\"}'
json_obj = json.loads(json_str)
pprint.pprint(json_obj)
报错如下:
json.decoder.JSONDecodeError: Invalid control character at: line 1 column 29 (char 28)
json.loads解析包含\n的字符串会有问题,解决办法为把\n换为\\n,修改后的示例代码如下:
import json, pprint
if __name__ == '__main__':
json_str = '{\"id\":\"1\", \"content\": \"line1\nline2\"}'
json_obj = json.loads(json_str.replace('\n', '\\n'))
pprint.pprint(json_obj)
更多内容,请扫码关注~