想要將字典內容寫入文件中,發現用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的中文即可正常顯示