Python中使用json.loads解析包含\n的字符串报错

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) 

更多内容,请扫码关注~

猜你喜欢

转载自blog.csdn.net/tunan666/article/details/117791661