91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中的pickle模塊是什么

發布時間:2020-09-24 10:12:54 來源:億速云 閱讀:150 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關Python中的pickle模塊是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

pickle模塊:

屬于python專有的模塊,用法,功能與json類似。

常用方法:

dump(obj,fp):將對象以字符串的形式寫入文件中。

load(fp):將數據從文件中讀出,并返回(需要變量接收)。

dumps(obj):將對象轉換成json字符串形式。

loads(str):將json字符串數據轉換成原來的數據類型。

dump(obj,fp)  |  load(fp) 示例如下;

import pickle
# 將數據以json方式寫入文件
dict_1 = {"電影":"黃飛鴻","電視劇":"霍元甲"}
file_write = open("pickle.txt",mode="wb")
pickle.dump(dict_1,file_write)  # 將字典以字節的形式寫入文件
file_write.close()
# 從文件中以json方式讀取數據
file_read = open("pickle.txt",mode="rb")
dict_2 = pickle.load(file_read)  # 將文件中內容轉換成原數據類型并返回
file_read.close()
print(dict_2.items(),type(dict_2)) # 打印轉換后的數據

打印內容如下

dict_items([('電影', '黃飛鴻'), ('電視劇', '霍元甲')]) <class 'dict'>

dumps(obj)  |  loads(obj) 示例如下;

import pickle
dict_1 = {"電影":"黃飛鴻"}
pickle_byte = pickle.dumps(dict_1)  # 將字典轉換成pickle字節
print(pickle_byte)
# 將pickle字節轉換成原數據
dict_2 = pickle.loads(pickle_byte)
print(dict_2.items(),type(dict_2)) # 打印轉換后的數據

打印內容如下

b'\x80\x03}q\x00X\x06\x00\x00\x00\xe7\x94\xb5\xe5\xbd\xb1q\x01X\t\x00\x00\x00\xe9\xbb\x84\xe9\xa3\x9e\xe9\xb8\xbfq
\x02s.'
dict_items([('電影', '黃飛鴻')]) <class 'dict'>

與json不同的是pickle可以多次dump多次load,如下:

import pickle
dict_1 = {"電影":"黃飛鴻"}
dict_3 = {"電視劇":"霍元甲"}
dict_5 = {"動畫片":"葫蘆娃"}
file_write = open("pickle.txt",mode="wb")
pickle.dump(dict_1,file_write)  # 將dict_1以字節的形式寫入文件
pickle.dump(dict_3,file_write)  # 將dict_3以字節的形式寫入文件
pickle.dump(dict_5,file_write)  # 將dict_5以字節的形式寫入文件
file_write.close()
file_read = open("pickle.txt",mode="rb")
dict_2 = pickle.load(file_read)  # 將文件中內容轉換成原數據類型并返回
dict_4 = pickle.load(file_read)  # 將文件中內容轉換成原數據類型并返回
dict_6 = pickle.load(file_read)  # 將文件中內容轉換成原數據類型并返回
file_read.close()
print(dict_2.items(),type(dict_2)) # 打印轉換后的數據
print(dict_4.items(),type(dict_4)) # 打印轉換后的數據
print(dict_6.items(),type(dict_4)) # 打印轉換后的數據

打印內容如下

dict_items([('電影', '黃飛鴻')]) <class 'dict'>
dict_items([('電視劇', '霍元甲')]) <class 'dict'>
dict_items([('動畫片', '葫蘆娃')]) <class 'dict'>

小結:

1、json屬于通用的模塊,Java,JS等其它語言也支持。

     pickle是Python私有的,只支持Python。

2、json將對象轉換成json字符串類型。

     pickle將對象轉換成pickle字節類型。

3、json只能轉換dict,list,tuple,str,int,float,bool值等簡單數據類型

     pickle能轉換除了lamda以外的所有已知數據類型。

4、json雖然可以多次dump但是load會報錯(這是最大的傷)。

     pickle可以多次dump,多次load。

關于Python中的pickle模塊是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桐柏县| 奇台县| 沈丘县| 马山县| 承德市| 布拖县| 晋中市| 衡东县| 婺源县| 隆子县| 巴青县| 祥云县| 奉节县| 松滋市| 老河口市| 姜堰市| 汤阴县| 中牟县| 浦江县| 正镶白旗| 都江堰市| 竹山县| 皋兰县| 乌苏市| 西林县| 盘山县| 全州县| 锡林郭勒盟| 彭泽县| 溆浦县| 麻阳| 新巴尔虎左旗| 潞城市| 桓台县| 临颍县| 阆中市| 云林县| 北川| 莱芜市| 东兰县| 星座|