簡體   English   中英

我可以腌制 Zip object 嗎?

[英]Can I pickle a Zip object?

我的目錄主要包含文本和 json 文件,以及一個二進制文件( MXNet.Block.save_parameters神經網絡的輸出)。

我想 zip 這個文件夾然后腌制它。 假設我有一個 zip 文件 object:

from zipfile import ZipFile
import os, pickle, itertools


files = list(itertools.chain(*[
    map(lambda x: os.path.join(root, x), files)
    for root, directories, files in os.walk('model-artifacts/')
]))

zfile = ZipFile('mymode.l.zip', 'w')

for file in file_paths:
   zfile.write(file)

我真的不能腌制它:

pickle.dumps(zfile)

# TypeError: cannot serialize '_io.BufferedRandom' object

我想知道是否有辦法腌制 zipfile 或任何腌制目錄內容的方法。

為什么?

我不是自己做酸洗,而是使用一個庫Metaflow來酸洗其中的對象,所以我想找到一種方法來用 Metaflow 存儲我的Metaflow

簡短回答:您不能腌制 Zip object。

說明: Zip 文件是已壓縮的文件。 酸洗的目的是我們試圖序列化一些(python)object。 但是,在文件壓縮之后,您不再真正擁有 (python) 對象,只是一堆 0 和 1 准備解壓縮。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM