1、json文本和json对象的区别
json文本是符合json格式的文本,是一个字符串
json对象是内存中的一个对象,拥有属性和方法,可以通过对象获取其中的参数信息
python中一般来说json对象是指字典
python中字典格式和json格式区别:
- 字典中的引号支持单引号和双引号,JSON格式只支持双引号
- 字典中的True/False首字母大写,JSON格式为true/false
- 字典中的空值为None, JSON格式为null
2、json格式操作方法
- 序列化:(字典---->文本/文件句柄):json.dump()/json.dumps()
- 反序列化(文本/文件句柄---->字典):json.load()/json.loads()
import json #将字典转化为合法的json文本 data = {"username":"test","password":"123456"} str_data = json.dumps(data) print(str_data)
json.dumps()方法可以将json文本格式化输出
import json #将json格式转化为字典,方便获取其中的参数 data = '{"username":"test","password":"123456"}' str_data = json.loads(data) print(str_data["username"])
3、文件的序列化和反序列化
(1)序列化:字典---->文件句柄
import json #将字典转换为文件句柄 data = {"username":"test","password":"123456"} f = open("demo.json","w") json.dump(data,f)
(2)反序列化:文件句柄--->字典
import json #将文件句柄转化为地点 f = open("demo.json","r") f_dict = json.load(f) print(f_dict["username"])