欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python3 pickle模塊的使用方法詳細介紹

 更新時間:2021年10月06日 13:20:04   投稿:wdc  
pickle提供了一個簡單的持久化功能??梢詫ο笠晕募男问酱娣旁诖疟P上,pickle序列化后的數(shù)據(jù),可讀性差,人一般無法識別,本文詳細介紹了pickle模塊的使用方法

pickle模塊特點

1、只能在python中使用,只支持python的基本數(shù)據(jù)類型。

2、可以處理復(fù)雜的序列化語法。(例如自定義的類的方法,游戲的存檔等)

3、序列化的時候,只是序列化了整個序列對象,而不是內(nèi)存地址。

pickle: 用于python特有的類型和python的數(shù)據(jù)類型間進行轉(zhuǎn)換,pickle提供四個功能:dumps,dump,loads,load

pickle可以存儲什么類型的數(shù)據(jù)呢?

所有python支持的原生類型:布爾值,整數(shù),浮點數(shù),復(fù)數(shù),字符串,字節(jié),None。

由任何原生類型組成的列表,元組,字典和集合。

函數(shù),類,類的實例

pickle模塊中常用的方法

1. pickle.dump(obj, file, protocol=None,)

必填參數(shù)obj表示將要封裝的對象

必填參數(shù)file表示obj要寫入的文件對象,file必須以二進制可寫模式打開,即“wb”

可選參數(shù)protocol表示告知pickler使用的協(xié)議,支持的協(xié)議有0,1,2,3,默認的協(xié)議是添加在Python 3中的協(xié)議3。

2. pickle.load(file,*,fix_imports=True, encoding="ASCII", errors="strict")

必填參數(shù)file必須以二進制可讀模式打開,即“rb”,其他都為可選參數(shù)

3. pickle.dumps(obj):以字節(jié)對象形式返回封裝的對象,不需要寫入文件中

4. pickle.loads(bytes_object): 從字節(jié)對象中讀取被封裝的對象,并返回

pickle模塊三種異常類型

1. PickleError:封裝和拆封時出現(xiàn)的異常類,繼承自Exception

2. PicklingError: 遇到不可封裝的對象時出現(xiàn)的異常,繼承自PickleError

3. UnPicklingError: 拆封對象過程中出現(xiàn)的異常,繼承自PickleError

pickle代碼實例

dumps功能

dumps 將數(shù)據(jù)通過特殊的形式轉(zhuǎn)換為只有python語言認識的字符串

import pickle
data = ['aa', 'bb', 'cc']  
# dumps 將數(shù)據(jù)通過特殊的形式轉(zhuǎn)換為只有python語言認識的字符串
p_str = pickle.dumps(data)
print(p_str)

結(jié)果:         

b'\x80\x03]q\x00(X\x02\x00\x00\x00aaq\x01X\x02\x00\x00\x00bbq\x02X\x02\x00\x00\x00ccq\x03e.

loads功能

loads  將pickle數(shù)據(jù)轉(zhuǎn)換為python的數(shù)據(jù)結(jié)構(gòu)

mes = pickle.loads(p_str)
print(mes)

結(jié)果:

['aa', 'bb', 'cc']

更多關(guān)于python pickle模塊請查看下面的相關(guān)鏈接

相關(guān)文章

  • Python讀寫mat文件操作指南(使用scipy.io)

    Python讀寫mat文件操作指南(使用scipy.io)

    Matlab是一個非常好用的矩陣計算分析軟件,然而隨著深度學(xué)習的發(fā)展,Python語言也逐漸成為人們的常用編程語言,這篇文章主要給大家介紹了關(guān)于Python使用scipy.io讀寫mat文件的相關(guān)資料,需要的朋友可以參考下
    2023-06-06
  • python多進程間通信代碼實例

    python多進程間通信代碼實例

    這篇文章主要介紹了python多進程間通信代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2019-09-09
  • Python中super的用法實例

    Python中super的用法實例

    這篇文章主要介紹了Python中super的用法實例,本文對比了普通繼承和super繼承的相關(guān)內(nèi)容,從運行結(jié)果上看,普通繼承和super繼承是一樣的,但是其實它們的內(nèi)部運行機制不一樣,這一點在多重繼承時體現(xiàn)得很明顯,需要的朋友可以參考下
    2015-05-05
  • Python實現(xiàn)文本相似度分析

    Python實現(xiàn)文本相似度分析

    這篇文章主要旨在通過設(shè)計和實現(xiàn)有關(guān)文本相似度比較的類Vector和Sketch,幫助大家進一步掌握設(shè)計Python類來解決實際問題的能力,有需要的小伙伴可以學(xué)習一下
    2023-07-07
  • Python調(diào)用Windows API函數(shù)編寫錄音機和音樂播放器功能

    Python調(diào)用Windows API函數(shù)編寫錄音機和音樂播放器功能

    這篇文章主要介紹了Python調(diào)用Windows API函數(shù)編寫錄音機和音樂播放器功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • 通過5個例子讓你學(xué)會Pandas中的字符串過濾

    通過5個例子讓你學(xué)會Pandas中的字符串過濾

    毋庸置疑Pandas是使用最廣泛的Python庫之一,它提供了許多功能和方法來執(zhí)行有效的數(shù)據(jù)處理和數(shù)據(jù)分析,下面這篇文章主要給大家介紹了關(guān)于如何通過5個例子讓你學(xué)會Pandas中字符串過濾的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • python多線程http下載實現(xiàn)示例

    python多線程http下載實現(xiàn)示例

    python多線程http下載實現(xiàn)示例,大家參考使用吧
    2013-12-12
  • 使用Django和Postgres進行全文搜索的實例代碼

    使用Django和Postgres進行全文搜索的實例代碼

    這篇文章主要介紹了使用Django和Postgres進行全文搜索,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • Python?調(diào)用GPT-3?API實現(xiàn)過程詳解

    Python?調(diào)用GPT-3?API實現(xiàn)過程詳解

    這篇文章主要為大家介紹了Python?調(diào)用GPT-3?API實現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-02-02
  • Python網(wǎng)頁解析器使用實例詳解

    Python網(wǎng)頁解析器使用實例詳解

    這篇文章主要介紹了Python網(wǎng)頁解析器使用實例詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2020-05-05

最新評論