日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python中的序列化与反序列化

發布時間:2023/11/30 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python中的序列化与反序列化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

之前,在學習python時,一直弄不明白pickle和json模塊的序列化和反序例化之間的區別和用法,最近閑來有時間,重新研究了這兩個模塊,也算是基本搞明白他們之中的區別了。

用于序列化的兩個模塊,

  • json,用于字符串 和 python數據類型間進行轉換
  • pickle,用于python特有的類型 和 python的數據類型間進行轉換

Json模塊提供了四個功能:dumps、dump、loads、load

pickle模塊提供了四個功能:dumps、dump、loads、load

?

看下面這個例子,或許你能明白他們之間的區別

import pickledata = ['aa', 'bb', 'cc'] # dumps 將數據通過特殊的形式轉換為只有python語言認識的字符串 p_str = pickle.dumps(data) print(p_str) # loads 將pickle數據轉換為python的數據結構 mes = pickle.loads(p_str) print(mes)# dump 將數據通過特殊的形式轉換為只有python語言認識的字符串,并寫入文件 with open('tmp.pw','wb') as f:pickle.dump(data,f)# load 從數據文件中讀取數據,并轉換為python的數據結構 with open('tmp.pw','rb') as f:print(pickle.load(f))

json和pickle模塊中的dump和load操作其實就是對數據進行編碼和解碼的處理

  • 編碼:把一個Python對象編碼轉換成Json字符串 ? json.dumps()
  • 解碼:把Json格式字符串解碼轉換成Python對象 ? json.loads()

?

轉載于:https://www.cnblogs.com/change1220/p/8484932.html

總結

以上是生活随笔為你收集整理的python中的序列化与反序列化的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。