首頁  >  文章  >  後端開發  >  Python的序列化和反序列化模組的簡單介紹(實例程式碼)

Python的序列化和反序列化模組的簡單介紹(實例程式碼)

不言
不言原創
2018-09-14 16:55:361950瀏覽

這篇文章帶給大家的內容是關於Python的序列化和反序列化模組的簡單介紹(實例代碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

序列化:將物件轉換為可透過網路傳輸或可儲存至本機磁碟的資料格式的轉換過程,稱為序列化,反之,稱為反序列化

json: 用來實現不同語言,不同程式直接的訊息交互,json支援所有高階語言之間的序列化交互,json只能透過  字典—>字串—>字典 的格式轉換

        註:json是讀寫序列化格式

#pickle: python 中獨有的序列化方法,如果有需要Python可以把Python中幾乎所有的類型都可以序列化轉換

       註:pickle是二進位讀寫序列化格式

json與pickle都有相同的方法:

  x.dumps():將會得到的json或pickle資料

序列化

為一個bytes,然後將這個bytes寫入磁碟或進行傳輸  x.loads():把得到的json或pickle當資料從磁碟讀到記憶體時,先將內容讀到一個bytes中,然後再用loads反序列化
出物件

  x.dump( ):可直接將得到的json或pickle資料序列化後儲存到檔案中

######  x.load():可直接讀取檔案中的json或pickle資料進行###反序列化###############實例:######################
import json,pickle
# f = open('测试文件.txt', 'w')     # json 运用 'w',写入
f = open('测试文件.txt', 'wb')        # pickle 运用二进制'wb'写入

info = {
    'Presly': 'come on',
    'Vera': '2333',
    'mini': 'hello'
}
# json.dump(info, f)        # 转为纯字符串
# f.write(json.dumps(info))

pickle.dump(info, f)         # 转为二进制
# f.write(pickle.dumps(info))

f.close()
###反序列化######
import json , pickle
# f = open('测试文件.txt', 'r')
f = open('测试文件.txt', 'rb')
# data = json.load(f)         # 只能识别字符串,不能识别二进制
# data = json.loads(f.read())
# data = pickle.load(f)          # 只能识别二进制
data = pickle.loads(f.read())
print(data)
f.close()
#######相關推薦:###############python3序列化與反序列化用法實例### #########################序列化與反序列化的詳細介紹##########

以上是Python的序列化和反序列化模組的簡單介紹(實例程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn