1. 程式人生 > >python入門之json與pickle資料序列化

python入門之json與pickle資料序列化

前提例項

  將一個字典存放在檔案裡

#存入資料
info = {   'name':'chy',   'age':18 } f = open("test.txt","w") f.write(str(info)) f.close()

 

#讀取資料
f = open("test.txt","r") data = eval(f.read()) f.close()
print(data["name"])

  以上使用str()和eval()函式對資料進行操作並不是規範使用,這樣很low,所以對於這種字典形式的資料的錄入轉換,就需要引入json了。

#存入資料
import json info = {   'name':'chy',   'age':18 } f = open("test.txt","w") f.write(json.dumps(info)) f.close()
#讀取資料
import json
f = open("test.txt","r")
data = json.loads(f.read())
f.close()
print(data["name"])

  另外pickle和json使用方式相似(提示,如果字典的值有函式名的話,那麼在讀取的程式裡必須有相同函式名的函式,內容不必一樣)

#存入資料,將字典轉換為二進位制資料
import pickle info = {   'name':'chy',   'age':18 } f = open("test.txt","wb") f.write(pickle.dumps(info)) f.close()
#讀取資料
import pickle
f = open("test.txt","rb")
data = pickle.loads(f.read())
f.close()
print(data["name"])