Python使用Pickle模塊進(jìn)行數(shù)據(jù)保存和讀取的講解
pickle 是一個 python 中, 壓縮/保存/提取 文件的模塊,字典和列表都是能被保存的.
但必須注意的是python2以ASCII形式保存,而在python3中pickle是使用轉(zhuǎn)換二進(jìn)制的數(shù)據(jù)壓縮方法保存數(shù)據(jù)
所以,在保存或者讀取數(shù)據(jù)的時候,打開文件應(yīng)該使用‘wb' 'rb'的方式
import pickle
a = 'owoof'
with open('111.pkl', 'wb') as file:
pickle.dump(a, file)
在Pickle模塊中還有dumps()和loads()函數(shù),他們是直接實現(xiàn)一個二進(jìn)制和pickle表示對象的轉(zhuǎn)換,不用打開文件(這點與dump不同)
dumps()是將可讀對象轉(zhuǎn)換成二進(jìn)制文件,并返回二進(jìn)制文件,loads()是把二進(jìn)制文件轉(zhuǎn)換成可讀對象,并返回對象
在使用dump()和load()時,需要注意用with open 打開一次文件每調(diào)用一次dump()就會在文件中生成一次數(shù)據(jù), 當(dāng)再次with open 打開文件時, 之前寫數(shù)據(jù)調(diào)用了幾次dump()就最多只能調(diào)用load()幾次,而且每次dump()是和load()對應(yīng)的.
with open('poins_normal.pkl', 'rb') as file:with open('poins_normal.pkl', 'rb') as file:
class_1 = pickle.load(file)
# print(np.shape(class_1))
class_2 = pickle.load(file)
labels = pickle.load(file)
class_1 = pickle.load(file)
# print(np.shape(class_1))
class_2 = pickle.load(file)
labels = pickle.load(file)
如上,我事先寫了三次dump(),那么之后的三次load()是一一對應(yīng)的,如果我進(jìn)行第四次load()調(diào)用,編譯器會提示data ran out of .
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
Python中自定義函方法與參數(shù)具有默認(rèn)值的函數(shù)
這篇文章主要介紹了Python中自定義函方法與參數(shù)具有默認(rèn)值的函數(shù),在Python編程中,可以使用已經(jīng)定義好的函數(shù),也可以自定義函數(shù)實現(xiàn)某些特殊的功能,更多相關(guān)資料,請需要的人參考下面文章內(nèi)容2022-02-02
tensorflow學(xué)習(xí)筆記之tfrecord文件的生成與讀取
這篇文章主要介紹了tensorflow學(xué)習(xí)筆記之tfrecord文件的生成與讀取,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
Python 機器學(xué)習(xí)第一章環(huán)境配置圖解流程
機器學(xué)習(xí)是一類算法的總稱,這些算法企圖從大量歷史數(shù)據(jù)中挖掘出其中隱含的規(guī)律,并用于預(yù)測或者分類,更具體的說,機器學(xué)習(xí)可以看作是尋找一個函數(shù),輸入是樣本數(shù)據(jù),輸出是期望的結(jié)果,只是這個函數(shù)過于復(fù)雜,以至于不太方便形式化表達(dá)2021-11-11
Python使用matplotlib的pie函數(shù)繪制餅狀圖功能示例
這篇文章主要介紹了Python使用matplotlib的pie函數(shù)繪制餅狀圖功能,結(jié)合實例形式分析了Python使用matplotlib的pie函數(shù)進(jìn)行餅狀圖繪制的具體操作技巧,注釋中對pie函數(shù)的用法進(jìn)行了詳細(xì)的說明,便于理解,需要的朋友可以參考下2018-01-01
TensorFlow實現(xiàn)checkpoint文件轉(zhuǎn)換為pb文件
今天小編就為大家分享一篇TensorFlow實現(xiàn)checkpoint文件轉(zhuǎn)換為pb文件,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
跟老齊學(xué)Python之玩轉(zhuǎn)字符串(2)更新篇
本文是玩轉(zhuǎn)字符串的續(xù)篇,繼續(xù)對字符串的連接方法進(jìn)行介紹,以及字符串復(fù)制、字符串長度、字符大小寫的轉(zhuǎn)換。非常不錯的文章,希望對大家有所幫助2014-09-09

