Python存儲json數(shù)據(jù)發(fā)生亂碼的解決方法
1.介紹
當(dāng)使用json.dump()把python對象轉(zhuǎn)換為json后存儲到文件中時,文件可能會出現(xiàn)亂碼的問題,本篇文章可以幫助您解決以下兩種亂碼:
2.樣例代碼
以下是用于演示的樣例代碼:
import json json_data = { "姓名": "張三", "年齡": 23, "性別": "男", "愛好": "打籃球" } # 指定編碼格式encoding='utf-8' # with open('./data/test.json', 'w', encoding='utf-8') as f: with open('./data/test.json', 'w') as f: # indent參數(shù)指定縮進量 # 其中的ensure_ascii默認為True,表示會將所有輸入的非ASCII字符轉(zhuǎn)義。只要改成False就可以。 # json.dump(json_data, f, indent=2, ensure_ascii=False) json.dump(json_data, f, indent=2)
3.解決方法
(1)使用 json.dump() 保存文件時中文會變成 Unicode,樣式如下:
json.dump()中的ensure_ascii默認為True,表示會將所有輸入的非ASCII字符轉(zhuǎn)義。只要改成False就可以。
(2)使用 json.dump() 保存文件時中文會變成口字碼,樣式如下:
寫入程序使用的編碼方式和數(shù)據(jù)目標的編碼方式不同造成的,申明open()函數(shù)的編碼方式為'utf-8',即encoding="utf-8" 即可解決.
4.驗證
重新運行程序,查看保存的json文件,發(fā)現(xiàn)中文不再亂碼:
到此這篇關(guān)于Python存儲json數(shù)據(jù)發(fā)生亂碼的解決方法的文章就介紹到這了,更多相關(guān)Python存儲json數(shù)據(jù)亂碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Python實現(xiàn)提取JSON文件中指定數(shù)據(jù)并保存至CSV或Excel內(nèi)
- 執(zhí)行python腳本并傳入json數(shù)據(jù)格式參數(shù)方式
- Python中使用json.load()和json.loads()加載json數(shù)據(jù)的方法實例
- 使用python如何提取JSON數(shù)據(jù)指定內(nèi)容
- Python解析JSON數(shù)據(jù)的基本方法實例代碼
- 詳解Python中如何將數(shù)據(jù)存儲為json格式的文件
- python 調(diào)用API接口 獲取和解析 Json數(shù)據(jù)
- Python?JSON數(shù)據(jù)解析過程(最新推薦)
相關(guān)文章
Python GUI學(xué)習(xí)之登錄系統(tǒng)界面篇
這篇文章主要介紹了Python GUI學(xué)習(xí)之登錄系統(tǒng)界面篇,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08關(guān)于阿里云oss獲取sts憑證 app直傳 python的實例
今天小編就為大家分享一篇關(guān)于阿里云oss獲取sts憑證 app直傳 python的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08使用memory_profiler監(jiān)測python代碼運行時內(nèi)存消耗方法
今天小編就為大家分享一篇使用memory_profiler監(jiān)測python代碼運行時內(nèi)存消耗方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12Python解決IndexError: list index out of&nb
IndexError是一種常見的異常類型,它通常發(fā)生在嘗試訪問列表(list)中不存在的索引時,錯誤信息“IndexError: list index out of range”意味著你試圖訪問的列表索引超出了列表的實際范圍,所以本文給大家介紹了Python成功解決IndexError: list index out of range2024-05-05- 這篇文章主要介紹了如何在 Python 中導(dǎo)入文本文件,在Python中導(dǎo)入文本文件是很常見的操作,我們可以使用內(nèi)置的open函數(shù)和with語句來讀取或?qū)懭胛谋疚募?,需要的朋友可以參考?/div> 2023-05-05
Python multiprocessing多進程原理與應(yīng)用示例
這篇文章主要介紹了Python multiprocessing多進程原理與應(yīng)用,結(jié)合實例形式詳細分析了基于multiprocessing包的多進程概念、原理及相關(guān)使用操作技巧,需要的朋友可以參考下2019-02-02最新評論