發現用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的中文即可正常顯示