Python:pickle模塊學習


1. pickle模塊的作用

將字典、列表、字符串等對象進行持久化,存儲到磁盤上,方便以后使用

 

2. pickle對象串行化

pickle模塊將任意一個python對象轉換成一系統字節的這個操作過程叫做串行化對象

 

3. pickle和cpickle

Python標准庫提供pickle和cPickle模塊。cPickle是用C編碼的,在運行效率上比pickle要高,但是cPickle模塊中定義的類型不能被繼承(其實大多數時候,我們不需要從這些類型中繼承,推薦使用cPickle)。cPickle和pickle的序列化/反序列化規則是一樣的,使用pickle序列化一個對象,可以使用cPickle來反序列化

 

4. pickle中常用的函數

(1)pickle.dump(obj, file, [,protocol])

作用:將要持久化的數據“對象”,保存到“文件”中,使用有3種協議,索引0為ASCII,1為舊式二進制,2為新式二進制協議,不同之處在於2要更高效一些(默認使用0協議)

 

(2)pickle.load(file)

作用:從“文件”中讀取字符串,將他們反序列化轉換為python的數據對象

 

(3)pickle.dumps(obj[, protocol])

作用:將obj對象序列化為string形式,而不是存入文件中

  • obj:想要序列化的obj對象
  • protocal:如果該項省略,則默認為0。如果為負值或HIGHEST_PROTOCOL,則使用最高的協議版本

(4)pickle.loads(string)

作用:從string中讀出序列化前的obj對象


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM