成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Dill:Python中增強(qiáng)版的pickle

開(kāi)發(fā)
通常我們都是用標(biāo)準(zhǔn)庫(kù)pickle進(jìn)行這項(xiàng)操作,但其功能單一,且針對(duì)很多常見(jiàn)的Python對(duì)象如lambda函數(shù)無(wú)法進(jìn)行序列化。而今天我要給大家介紹的庫(kù)dill就可以看作增強(qiáng)版的pickle。

大家好我是費(fèi)老師,相信不少讀者朋友們都在Python?中利用pickle?進(jìn)行過(guò)序列化操作,而所謂的序列化,指的是將程序運(yùn)行時(shí)在內(nèi)存中產(chǎn)生的變量對(duì)象,轉(zhuǎn)換為二進(jìn)制類(lèi)型的易存儲(chǔ)可傳輸數(shù)據(jù)的過(guò)程,相反地,從序列化結(jié)果解析還原為Python變量就叫做反序列化。

通常我們都是用標(biāo)準(zhǔn)庫(kù)pickle?進(jìn)行這項(xiàng)操作,但其功能單一,且針對(duì)很多常見(jiàn)的Python?對(duì)象如lambda?函數(shù)無(wú)法進(jìn)行序列化。而今天費(fèi)老師我要給大家介紹的庫(kù)dill?就可以看作增強(qiáng)版的pickle。

使用dill實(shí)現(xiàn)更豐富的序列化/反序列化操作

作為第三方庫(kù),我們使用pip install dill?完成安裝后,就可以使用它來(lái)代替pickle了:

基礎(chǔ)使用

dill?的基礎(chǔ)使用與pickle?一樣,使用dump/dumps?進(jìn)行序列化操作,load/loads進(jìn)行反序列化操作,下面是一些基本的例子,我們對(duì)一些常見(jiàn)的對(duì)象進(jìn)行序列化/反序列化操作:

import dill
import numpy as np

demo_int = 999

demo_float = 0.99

demo_dict = {'a': 999}

demo_array = np.random.rand(2, 2)

# 序列化并寫(xiě)出到pkl文件
with open('./demo.pkl', 'wb') as d:
dill.dump(
[demo_int, demo_float, demo_dict, demo_array],
d
)

從寫(xiě)出的demo.pkl文件中還原對(duì)象:

# 序列化并寫(xiě)出到pkl文件
with open('./demo.pkl', 'rb') as d:
restore_demo = dill.load(d)

restore_demo

圖片

增強(qiáng)功能

看完了dill?的基礎(chǔ)用法,下面我們來(lái)介紹其相對(duì)于pickle進(jìn)行增強(qiáng)的特殊功能:

對(duì)lambda函數(shù)進(jìn)行序列化

pickle?可以對(duì)常規(guī)的函數(shù)進(jìn)行序列化,但針對(duì)lambda?函數(shù)則會(huì)報(bào)錯(cuò),而使用dill就可以正常序列化:

圖片

保存解釋器的會(huì)話狀態(tài)

dill?中另一項(xiàng)很實(shí)用的功能則是其支持將當(dāng)前解釋器的會(huì)話狀態(tài)整個(gè)打包保存和還原,譬如下面的例子,利用dill.dump_session()?保存當(dāng)前解釋器會(huì)話狀態(tài),在另一個(gè)獨(dú)立的py?腳本中再利用dill.load_session()就可以一步到位全部還原:

圖片

從序列化結(jié)果中還原源碼

dill?中另一個(gè)很強(qiáng)大的功能是其source?模塊可以從序列化結(jié)果中還原對(duì)象的源碼,這在序列化的對(duì)象為函數(shù)時(shí)非常實(shí)用(注意目前此功能不可以在ipykernel?中執(zhí)行,因此下面的例子使用魔術(shù)命令直接執(zhí)行外部py腳本):

圖片

除此之外,dill?還有很多其他豐富的功能,感興趣的讀者朋友可以前往其官方文檔(https://dill.readthedocs.io/en/latest/dill.html)了解更多。

責(zé)任編輯:趙寧寧 來(lái)源: Python大數(shù)據(jù)分析
相關(guān)推薦

2011-09-15 14:00:52

IOS應(yīng)用SpoolInstapaper

2023-09-03 19:43:46

htmxJavaScript網(wǎng)絡(luò)

2011-01-05 11:12:34

C++

2013-05-15 09:14:01

2021-01-27 10:01:46

MySQL數(shù)據(jù)庫(kù)SQLX

2009-01-05 10:30:23

賽門(mén)鐵克Veritas數(shù)據(jù)中心

2011-05-26 17:55:08

2010-08-25 10:42:20

GroovyGroovy++

2009-12-29 14:18:43

ADO.NET2.0

2023-05-10 08:17:22

合并事件推送

2015-09-23 11:27:20

Office 2016ISO鏡像微軟

2023-05-30 14:59:41

人工智能工具數(shù)字化

2013-08-20 17:46:43

通達(dá)OA

2023-04-06 08:27:47

SidecarSet容器

2013-10-09 14:57:41

通達(dá)oa

2023-04-04 07:25:46

KubernetesOpenKruise

2012-08-28 13:37:30

2013-10-15 14:40:51

通達(dá)OA

2022-10-08 08:15:55

GScriptGo 語(yǔ)言
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 欧美精品综合在线 | 精品成人在线 | 国产精品久久久久久久久免费高清 | 国产精品a久久久久 | 日本激情一区二区 | 天天干天天爱天天爽 | 国产一区二区三区欧美 | 成年人黄色免费视频 | 91视频电影 | 国产精品一区二区av | 午夜看片 | 午夜在线观看视频 | 精品国产欧美 | 成人免费视频网站在线观看 | 国产99久久| 黄色成人在线观看 | 亚洲欧洲精品成人久久奇米网 | 欧美激情亚洲天堂 | 国产一区二区久久久 | 国产精品久久久久久久久免费软件 | 国产亚洲欧美另类一区二区三区 | 国产毛片毛片 | 亚洲国产网站 | 国产视频中文字幕 | 国产视频一区在线 | 日本不卡一区二区三区 | 久久三区 | 久久久久久国产 | 日本一二三区电影 | 美女拍拍拍网站 | 国产视频在线观看一区二区三区 | 青青伊人久久 | 精品在线观看入口 | 影音先锋成人资源 | 国产精品久久久久久久免费观看 | 亚洲性视频 | 在线播放91 | 国产欧美日韩综合精品一区二区 | 六月成人网 | 你懂的av | 中文字幕国产一区 |