[如果我有一个hdf5文件f1.h5
,并且想将此文件复制到另一个文件(例如f2.h5
),但是我不知道f1.h5
的结构,我想自动复制它,我可以使用h5py
的一些技巧来做到这一点吗?
我不知道h5py,但是应该可以通过:
f1=open('f1.h5','rb')
f2=open('f2.h5','wb')
f2.write(f1.read())
您读取第一个文件的每个字节并将其写入第二个文件。诸如结构之类的东西都没有关系
您可以使用.copy()
方法将对象从f1.h5
递归复制到f2.h5
。您不需要了解架构:使用键在根级别访问组/数据集。如果源是一个Group对象,则默认情况下将递归复制该组中的所有对象。
import h5py
h5r=h5py.File("f1.h5", 'r')
with h5py.File("f2.h5", 'w') as h5w:
for obj in h5r.keys():
h5r.copy(obj, h5w )
h5r.close()