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

從零學(xué)python系列之淺談pickle模塊封裝和拆封數(shù)據(jù)對(duì)象的方法

 更新時(shí)間:2014年05月23日 10:13:06   作者:  
這個(gè)系列也發(fā)了幾篇文章了,都是個(gè)人的一些學(xué)習(xí)心得的記錄,今天在學(xué)習(xí)文件數(shù)據(jù)處理的時(shí)候了解到有pickle模塊,查找官方文檔學(xué)習(xí)了一些需要用到的pickle內(nèi)容。

封裝是一個(gè)將Python數(shù)據(jù)對(duì)象轉(zhuǎn)化為字節(jié)流的過(guò)程,拆封是封裝的逆操作,將字節(jié)文件或字節(jié)對(duì)象中的字節(jié)流轉(zhuǎn)化為Python數(shù)據(jù)對(duì)象,不要從不收信任的數(shù)據(jù)源中拆封數(shù)據(jù)??梢苑庋b和拆封幾乎任何Python數(shù)據(jù)對(duì)象,主要包括:

    None , True,F(xiàn)alse
    整數(shù),浮點(diǎn)數(shù),復(fù)數(shù)
    字符串,字節(jié),ByteArray對(duì)象
    元組,列表,集合,包含可封裝對(duì)象的字典
    在一個(gè)模塊的頂層定義的函數(shù)
    在一個(gè)模塊的頂層定義的內(nèi)置函數(shù)
    那是在一個(gè)模塊的頂層定義的類
    __dict__或調(diào)用__getstate__()的結(jié)果是可封裝的類的實(shí)例

 pickle模塊中常用的方法有:

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

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

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

    可選參數(shù)protocol表示告知pickler使用的協(xié)議,支持的協(xié)議有0,1,2,3,默認(rèn)的協(xié)議是添加在Python 3中的協(xié)議3,     其他的協(xié)議詳情見(jiàn)參考文檔

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

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

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

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

 pickle模塊可能出現(xiàn)三種異常:

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

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

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

 pickle應(yīng)用實(shí)例:

復(fù)制代碼 代碼如下:

import pickle 

with open("my_profile.txt", "wb") as myprofile: 
    pickle.dump({"name":"AlwaysJane", "age":"20+", "sex":"female"}, myprofile)

with open("my_profile.txt", "rb") as get_myprofile:
    print (pickle.load(get_myprofile))

復(fù)制代碼 代碼如下:

import pickle

class Profile:
    name = "AlwaysJane"

pickledclass = pickle.dumps(Profile)
print (pickledclass)
print (pickle.loads(pickledclass))

理解不是很透徹,希望大神們指正錯(cuò)誤。。。

附上參考文檔

相關(guān)文章

  • python文件與路徑操作神器?pathlib

    python文件與路徑操作神器?pathlib

    這篇文章主要介紹了python文件與路徑操作神器?pathlib,pathlib中封裝了PurePath和Path類,前者用于處理路徑風(fēng)格的字符串;后者是前者的子類,可直接處理路徑,下文關(guān)于更多的pathlib相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-04-04
  • python畫環(huán)形圖的方法

    python畫環(huán)形圖的方法

    這篇文章主要為大家詳細(xì)介紹了python畫環(huán)形圖的相關(guān)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • python的函數(shù)形參和返回值你了解嗎

    python的函數(shù)形參和返回值你了解嗎

    這篇文章主要為大家詳細(xì)介紹了python的函數(shù)形參和返回值,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • python?rsa和Crypto.PublicKey.RSA?模塊詳解

    python?rsa和Crypto.PublicKey.RSA?模塊詳解

    這篇文章主要介紹了python?rsa和Crypto.PublicKey.RSA?模塊,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-04-04
  • Python對(duì)FTP交互封裝的實(shí)現(xiàn)

    Python對(duì)FTP交互封裝的實(shí)現(xiàn)

    本文主要介紹了Python對(duì)FTP交互封裝的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • 利用Python實(shí)現(xiàn)自動(dòng)生成數(shù)據(jù)日?qǐng)?bào)

    利用Python實(shí)現(xiàn)自動(dòng)生成數(shù)據(jù)日?qǐng)?bào)

    日?qǐng)?bào),是大部分打工人繞不過(guò)的難題。對(duì)于管理者來(lái)說(shuō),日?qǐng)?bào)是事前管理的最好抓手,可以了解團(tuán)隊(duì)的氛圍和狀態(tài)。本文將利用Python實(shí)現(xiàn)自動(dòng)生成數(shù)據(jù)日?qǐng)?bào),感興趣的可以動(dòng)手嘗試一下
    2022-07-07
  • Python是什么 Python的用處

    Python是什么 Python的用處

    在本篇文章里小編給大家分享的是關(guān)于python的作用和用途知識(shí)點(diǎn),有興趣的朋友們可以參考下。
    2020-05-05
  • python生成單位陣或?qū)顷嚨娜N方式小結(jié)

    python生成單位陣或?qū)顷嚨娜N方式小結(jié)

    這篇文章主要介紹了python生成單位陣或?qū)顷嚨娜N方式小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Python selenium 三種等待方式解讀

    Python selenium 三種等待方式解讀

    這篇文章主要介紹了Python selenium一定要會(huì)用selenium的等待,三種等待方式解讀的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • Matplotlib繪圖基礎(chǔ)之地圖繪制詳解

    Matplotlib繪圖基礎(chǔ)之地圖繪制詳解

    如果分析的數(shù)據(jù)與地域相關(guān),那么,把分析結(jié)果結(jié)合地圖一起展示的話,會(huì)讓可視化的效果得到極大的提升,下面就來(lái)講講如何利用Matplotlib一步步通過(guò)地圖來(lái)展示分析結(jié)果吧
    2023-08-08

最新評(píng)論