1. 程式人生 > >day 22 模組2 序列化

day 22 模組2 序列化

一 . 序列化

      儲存資料時,對物件進行處理,方便我們儲存和傳輸資料格式,這個過程叫序列化。不同的序列化,結果不同,目的就是為了儲存和傳輸的。 序列化方案包括pickle,shelve , json 三種。

二 . pickle(重點)

      通過dumps序列化物件轉化成一串二進位制程式碼(看不懂的,只有電腦才能明白)

      通過loads將一串二進位制程式碼轉回成序列化物件    

      通過dump把物件寫入到檔案中

      通過load把檔案中的物件轉回

三 . shelve 

      shelve是提供python的持久化操作,把資料寫道硬盤裡,很像字典

      shelve處理複雜字典資料的時候有坑,檔名後加入writeback = True

      shelve.open("檔名",writeback = True)   # writeback可以動態的把我們修改的資訊寫入到檔案中,並且可以刪資料,跟字       典  一樣。

四 . json(很重要): 前後端處理都會用json來傳輸資料

      import  json

      dic = { "a" : "功夫胖 ","b":"派克特","c":"熱狗"}

      s = json.dumps(dic,ensure_ascii = False)   # 把字典轉化成json字串

      print(s)   

      那怎麼來把字串轉化成字典:

     import  json

     s = ‘  { "a" : "功夫胖 ","b":"派克特","c":"熱狗"}’

     dic = json.lodals(s)

     print(type(dic),dic)

     json也可以跟pickle一樣把序列化的結果寫入檔案

     用dump把物件打散寫入檔案中,但不能

     用load把檔案中內容的轉回字典的形式

五 . configparser模組

     適用於配置檔案的格式與windows  ini 檔案類似,可以包含一個或多個位元組