Linux命令编辑由numpy savez函数生成的zip文件
问题描述:
我想编辑由numpy savez函数生成的zip文件。例如,我们可以制作一个zip文件,如Linux命令编辑由numpy savez函数生成的zip文件
>>> import numpy as np
>>> x = np.array([1,2,3])
>>> y = np.array([4,5,6])
>>> dat = {'/path/to/x': x, '/path/to/y': y}
>>> f = open('foo', 'wb')
>>> np.savez(f, **dat)
此代码创建一个名为foo的zip文件。 (在ubuntu GUI上,它显示为Zip存档类型)
然后,我想删除zip文件中的文件y。 (不使用Python)
我试过一种方法,首先解压缩文件并手动删除文件并再次压缩。我通过tar
命令创建了一个zip文件,但它生成了gzip压缩的tar归档文件。
编辑并生成numpy save_z生成的zip文件的正确方法是什么?
答
我试过这个档案管理器;在我的情况下,Mate
版本,Engrampa
。
我试图从.npz
文件中删除文件时出现错误。但如果我将其重命名为.zip
,删除工作正常。并且np.load
处理了zip
这个名字。
npz
文件是p7zip Version 9.20
;这是与'本地'unix不同的存档格式,gzipped tar
。现代Linux归档管理器可以处理这些和其他,这取决于安装哪些命令行工具。
如果你使用'unzip',那么你应该检查'zip'命令。 – furas