python Json報錯json.decoder.JSONDecodeError


近期工作中遇到一個問題,執行json.loads(json_data)時,在json_data中加上tab空格后就報錯,不加則不報錯

一、json.loads(json_data) 報錯json.decoder.JSONDecodeError: Invalid control character at: line 25 column 18 (char 18)

  原因:json默認使用的是嚴謹格式,json_data鍵值中有非法控制符號如\n\t, 當跨語言傳遞數據時,就容易報出這個錯誤。

  解決方法:加上參數 strict

json.loads(json_data, strict=False)

 

二、json.dumps(data) 將漢字轉為unicode編碼

  原因:json默認會進行字符轉換

  解決方法: 添加 ensure_ascii 參數

json.dumps(data, ensure_ascii=False)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM