python 读写中文json的实例详解

yipeiwu_com5年前Python基础

 python 读写中文json的实例详解

读写中文json

想要 读写中文json ,可以使用python中的 json 库可以对json进行操作。读入数据可以使用 json.load。

f = file(path)
data = json.load(f)

json被载入到一个dict类型的object对象中。

使用 json.dump可以输出json。不过输出的文本并不是中文,而是转换为 utf-8的格式。此处需要:

output = json.dump(jsonData,targetFile,ensure_ascii=False,indent=4)

输出中文的json。通过使用 ensure_ascii=False,输出原有的语言文字。indent参数是缩进数量。

更改写文件格式

将上一步导出的 string 直接写文件会报错(可能只在Python2.7中出现):

UnicodeEncodeError: 'ascii' codec can't encode characters in position 1-9: ordinal not in range(128) 

这是由于此处输出的一些ascii编码不支持,所以报错。

解决的办法是,在输出的时候,对文件制定特定的UTF-8编码:

import codecs
 
with codecs.open(path,'w','utf-8') as w:
  #write to w 
 

使用这种方式可以成功输出到文件。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

python+POP3实现批量下载邮件附件

最近新开学,接到了给老板的本科课程当助教的工作,百十来号人一学期下来得有四五次作业发进邮箱里,需要我来统计打分,想想挨个点进去下载附件的过程就头大,于是萌生了写个脚本来统计作业的想法。...

Python实现监控键盘鼠标操作示例【基于pyHook与pythoncom模块】

Python实现监控键盘鼠标操作示例【基于pyHook与pythoncom模块】

本文实例讲述了Python实现监控键盘鼠标操作。分享给大家供大家参考,具体如下: # -*- coding: utf-8 -*- import pythoncom import py...

Python面向对象程序设计多继承和多态用法示例

Python面向对象程序设计多继承和多态用法示例

本文实例讲述了Python面向对象程序设计多继承和多态用法。分享给大家供大家参考,具体如下: 多继承 就是一个子类继承多个父类: 多继承的例子,如下: # -*- coding:u...

python中去空格函数的用法

本文简单介绍了Python中去空格函数的用法,这是一个很实用的函数,希望对大家的Python程序设计有所帮助。具体分析如下: 在Python中字符串处理函数里有三个去空格的函数: str...

Python内置的字符串处理函数整理

str='python String function' 生成字符串变量str='python String function'字符串长度获取:len(str)例:print '%s l...