JSON(Java Script Object Notation):一種輕量級數(shù)據(jù)交互格式扒接。python的json模塊序列化與反序列化的過程分別是encoding和decoding挺益。
encoding:把一個python對象編碼轉(zhuǎn)換成Json字符串纷跛。
decoding:把json格式字符串編碼轉(zhuǎn)換成python對象钥飞。
json提供四個功能:json.loads镣隶、json.dumps绷耍、json.load奇钞、json.dump魏保。loads跟dumps是用來處理字符串的熬尺,load跟dump是用來處理文件的。
loads:把json轉(zhuǎn)換成其他格式谓罗,字符串或文件相關的
dumps:把其他對象或格式轉(zhuǎn)換為json格式
load:將文件的內(nèi)容轉(zhuǎn)換成為json數(shù)據(jù)
dump:把json數(shù)據(jù)寫入到文件中
- 把dict格式轉(zhuǎn)換為json字符串格式
import json
a = dict(name='huangdongju', age=25,message='something')
print (a)
print (type(a))
b = json.dumps(a)
print (b)
print (type(b))
運行結(jié)果
- 把json格式轉(zhuǎn)換成為dict
c = json.loads(b)
print (type(c))
print (c)
print (c['name'])
運行結(jié)果
- 把json寫入文件中
import json
jsondata = '''{"a":1,"b":2,"c":3}'''
with open('a.txt','w') as f:
json.dump(jsondata,f)
f.close()
- 從文件中讀取內(nèi)容轉(zhuǎn)換成json格式
import json
with open('a.txt','r') as fr:
m = json.load(fr)
print (m)
print (type(m))
fr.close()
運行結(jié)果