首页 > 技术文章 > json显示中文字符

863652104kai 2019-08-14 15:31 原文

json写入中文字符并显示

想把一个字典{"name":"张三"}形式的数据写入文本中,并且能显示中文字符

dict = {'name':'张三'}
with open('a.txt','w',encoding='utf-8') as f:
    f.write(dict)

在python中如果这样直接写的话,会出现TypeError异常:写入的数据必须是字符串,不能是字典。

所以得将它转换成字符串的形式,用json格式来写入。但是在写入的文本中不能显示想看的中文字符{"name": "\u5f20\u4e09"},在json中加一个ensure_ascii=False参数就能解决啦

import json
dict = {'name':'张三'}
with open('a.txt','w',encoding='utf-8') as f:
    f.write(json.dumps(dict,ensure_ascii=False))

推荐阅读