Python标准库Json的作用
1.使用Json字符串生成Python对象
json.load(fp)
import json
with open('json_a.json','r') as fi:
a=json.load(fi)
print(a)
json.loads(s)
将json格式的字符串转换为python的类型,会将 ” 改成 ’
不要直接在字典旁添加 ’ ‘改成字符串,会报错
import json
a='{"employees":"bd","name":"anhao","age":18}'
print(a)#{"employees":"bd","name":"anhao","age":18}
json_a=json.loads(a)
print(json_a)#{'employees': 'bd', 'name': 'anhao', 'age': 18}
print(type(json_a))#<class 'dict'>
print(type(a))#<class 'str'>
2.Python对象格式化为Json字符串
json.dump(obj,fp)
import json
a = {
"employees": [
{'first': 'ohn', 'last': 'Doe'},
{"first": "Anna", "last": "Smith"},
{"first": "Peter", "last": "Jones"}
],
'name': 'anhao',
'age': 15,
"location": 'Yunnan'
}
print(a)
filename = "json_a.json"
with open(filename, 'a') as fi:
json.dump(a, fi, indent=4)
dumps参数:
sort_keys:是否排序
indent:定义缩进距离,一般为4
separators:是一个元组,定义分隔符的类型
skipkeys:是否允许JSON字串编码字典对象时,字典的key不是字符串类型(默认是不允许)
json.dumps(obj)
import json
a = {
"employees": [
{'first': 'ohn', 'last': 'Doe'},
{"first": "Anna", "last": "Smith"},
{"first": "Peter", "last": "Jones"}
],
'name': 'anhao',
'age': 15,
"location": 'Yunnan'
}
print(a)
json_a=json.dump(a)
print(json_a)
print(type(json_a))
方法混淆可以将方法后的s理解为字符串,不带s操作的对象是json文件。