python中json.dumps將中文變成unicode字符的解決辦法


發現用json.dumps時發現保存到文件中時中文部分變成unicode字符,如圖

 

 

解決方法:

1.將data格式化成字符串

2.在json.dumps中加ensure_ascii,設置ensure_ascii=False

 

 

 

原因:
1. Python 3已經將unicode作為默認編碼
2. Python 3中的json在做dumps操作時,會將中文轉換成unicode編碼,並以16進制方式存儲,再做逆向操作時,會將unicode編碼轉換回中文
這就解釋了,為什么json.dumps操作后,得到的字符串是\uXXXX。
json dump有一個ensure_ascii參數,默認為True,當它為True的時候,所有非ASCII碼字符顯示為\uXXXX序列,只需在dump時將ensure_ascii設置為False即可,此時存入json的中文即可正常顯示

 


免責聲明!

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



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