目录

简介

h5py文件是存放两类对象的容器,分别是dataset和group。dataset类似于数组,和numpy的数组差不多。group类似于字典,“键”就是group成员的名称,”值”就是group成员对象本身(group或者dataset)。

写入数据

代码

# coding: utf8

import h5py
import numpy as np

f = h5py.File("1.h5py", "w")

# 1
d1 = f.create_dataset("dataSet1", (20,), 'i')
d1[...] = np.arange(20)

f["dataSet2"] = np.arange(15)

a=np.arange(20)
d1=f.create_dataset("dataSet3",data=a)

for key in f.keys():
    print(f[key].name)
    print(f[key].value)

输出

/dataSet1
[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19]
/dataSet2
[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14]
/dataSet3
[ 0  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19]

创建group

代码

# coding: utf8

import h5py
import numpy as np

f = h5py.File("myh5py.hdf5","w")

# 创建一个名字为group1的组
g1 = f.create_group("group1")

# 在bar这个组里面分别创建name为dset1,dset2的数据集并赋值。
g1["dataSet1"]=np.arange(10)
g1["dataSet2"]=np.arange(12).reshape((3,4))

for key in g1.keys():
    print(g1[key].name)
    print(g1[key].value)

输出

/group1/dataSet1
[0 1 2 3 4 5 6 7 8 9]
/group1/dataSet2
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]

参考