利用Python处理json文件

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,尽管JSON是JavaScript的一个子集,但它是独立于语言的文本格式。
在Python中,我们使用json包来实现json文件的读取和写入。

读取json文件

使用json.loads()json.load()两个函数来读取json文件。

json.loads()

json.loads()用来解析包含JSON数据的字符串,解析后变量格式为字典。
用法:

json.loads()用法

json.load()

json.load()用来解析json文件,这也是和json.loads()唯一的区别。
解析json文件时,要么该文件只包含一行(只有一个字典),要么每个字典是列表的一个元素,如图:

json.load()用法

如果是后一种,则解析出的变量也为列表格式,每个元素是对应的字典。

编码为json格式

使用json.dumps()json.dump()两个函数来编码json格式。

json.dumps()

json.dumps()将一个Python数据结构(字典)编码成json格式的字符串。
用法:

json.dumps()用法

json.dump()

json.dump()将一个Python数据结构(字典)编码成json格式,并写入到文件中。
用法:

json.dump()用法

jj.json文件为:

写入的json文件

共有参数

  • ensure_ascii=True:如果有中文时,需改为False,即不转义为ASCII码;
  • indent=None:缩进。默认为紧凑格式,0/负数或者""为只换行,正数代表缩进多少个空格,也可以使用"\t"等;
  • sort_keys=False:是否按照键排序;
  • separators=None:分隔符。默认为None(即(", ", ": ")),可以改为紧凑形式(",", ":")等。

参考

https://docs.python.org/3/library/json.html