您好,登錄后才能下訂單哦!
序列化 (Serialization)將對象的狀態信息轉換為可以存儲或傳輸的形式的過程。在序列化期間,對象將其當前狀態寫入到臨時或持久性存儲區。
簡單點言之:通過設計的一套協議,按照莫種規則,把內存中的數據保存到文件中或者直通過網絡傳輸。把數據轉換為字節序列,輸出到文件就是序列化,反正,從文件的字節序列恢復到內存,就是反序列化。
其中就有多種庫對此過程進行協助:
pickle庫:
dumps 對象序列化為bytes對象
dump 對象序列化為文件對象,就是存入文件
loads 從bytes對象反序列化
load 從bytes對象反序列化,從文件中讀取
一般來說序列化多應用于網絡傳輸中,但遠程接收端,反序列化必須有對應的數據類型,否則就會報錯。隨著現在大量服務需結合網路,排拖單機,pickle這種只適合于python程序之間的協議就沒了作用。所以就需要公共協議。比如XML·json·MessagePack。
json庫:
dumps json編碼
dump json編碼并存入文件
loads json解碼
load json解碼,從文件讀取數據
類似于json,但更快速,輕巧。
兼容json和pickle。
最佳序列化選擇json
其實序列化即反序列化主要操作就是這兩個步驟,主要是要了解這主要概念及再實際操作中選擇出對的協議進行操作,保證事半功倍。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。