Python JSON
JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。
Python3 中可以使用 json 模块来对 JSON 数据进行编解码,它包含了两个函数:
- json.dumps(): 对数据进行编码。字典->字符串
- json.loads(): 对数据进行解码。字符串-?字典
import json # s="{'name':'Tom'}"#json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1) s='{"name":"Tom"}' print(type(s)) s=json.loads(s) print(type(s)) print(s)#{'name': 'Tom'} s=json.dumps(s) print(type(s)) print(s)
json.dump(x,f),x是对象,f是一个文件对象,这个方法可以将json字符串写入到文本文件中。
d=dict(name="Jerry",gender="male",age=16) d1=dict(country="China") with open("p_load.json","a+") as f: f.write("[") json.dump(d,f) f.write(",") json.dump(d1, f) f.write("]")
此时就可以在.json中写入数据,一定要记得json数据的格式,首尾的方括号和每组数据之间的逗号,否则在load数据时会报错:
json.decoder.JSONDecodeError: Extra data: line 1 column 47 (char 46)
json.load加载json格式文件。
with open("p_load.json","r") as f: info = json.load(f) print(info)