一.总览:
json文件常用于python web的前端和后端传输数据。即后端产生的数据存到某个json文件,前端需要用到这些数据的时候,通过js加载到界面中。python操纵json文件有四个函数。使用的时候需要import json
1.dumps
dumps的作用是将python中的数据结构,如list,dict等转化为json的字符串。
2.dump
dump的作用是将python中的数据结构,以json字符串的形式存到文件中。此函数和上一个函数的区别在于,dump是输出到文件。
3.loads
与dumps互为对应,用dumps转化成的json字符串,可以用loads把json格式的字符串转成python中的对应数据结构
4.load
与dump互为对应,可以从json文件中读取相应的json字符串,并将其转化为python中对应的数据结构。
二.示例:
1.dumps
def test_dumps():
tmp_dict = {
"apple": "red",
"fish": "water",
"cat": "black"
}
print("before use dumps:")
print(type(tmp_dict))
print("after use dumps:")
tmp_dict = json.dumps(tmp_dict)#使用dumps将字典类型的数据转化为json形式的字符串
print(type(tmp_dict))
效果如下:
2.loads
def test_loads():
tmp_dict = {
"apple": "red",
"fish": "water",
"cat": "black"
}
tmp_dict = json.dumps(tmp_dict)#将python数据结构转化为json字符串
print ("before use loads")
print(type(tmp_dict))
print("after use loads")
tmp_dict = json.loads(tmp_dict)#将json字符串转化为python数据结构
print(type(tmp_dict))
3.dump
def test_dump():
tmp_dict = {
"apple": "red",
"fish": "water",
"cat": "black"
}
path = 'one.json' #需要存储的json文件的路径
with open(path,'wb') as f:
json.dump(tmp_dict,f) #将python中的数据结构,此处为字典转化为json字符串并存到文件
4.load
def test_load():
path = 'one.json'
with open(path,'rb') as f:
data = json.load(f) #将json数据从文件中读出来
print(type(data))
print data