Reading HDF5 files requires h5py.
h5py file objects have a dictionary-like interface where the keys are the event names (event_0, event_1, …) and the values are HDF5 datasets.
Datasets can implicitly or explicitly convert to numpy arrays, and the attrs object provides access to the event properties.
Simple example:

importh5py# open an HDF5 file for readingwithh5py.File('events.hdf','r')asf:# get the first event from the fileev=f['event_0']# plot the profileplt.imshow(ev,interpolation='none',cmap=plt.cm.Blues)# extract the profile as a numpy arrayprofile=np.array(ev)# read event propertiesmult=ev.attrs['mult']e2=ev.attrs['e2']# sort by centralitysorted_events=sorted(f.values(),key=lambdax:x.attrs['mult'],reverse=True)