2017-07-24 1 views
1

Je veux lire le fichier HDF5 en Python et faire du travail de codage. Pour accéder aux données dans un fichier HDF5 dans un environnement python, vous avez besoin du nom du jeu de données du fichier HDF5. Cependant, je ne sais pas comment trouver le nom du jeu de données et je voudrais demander de l'aide.Comment savoir le nom de l'ensemble de données HDF5 en python

def select_HDF_file(self): 
    filename2 = QFileDialog.getOpenFileName(self.dlg, "Select output 
    file","",'*.hdf') 
    dataset_name = '**************' 

    file = h5py.File(filename2 , 'r') 
    dataset = file[dataset_name] 

Répondre

1

file est un dictionnaire python. Ainsi, vous pouvez itérer sur file et stocker tous les jeux de données, par exemple:

>>> file = h5py.File('file.h5', 'r') 
>>> dataset = [] 
>>> for i in file.values(): 
...  dataset.append(i) 
...  ... 

Si seulement pour la liste: list(file.values()).

Enfin, si vous voulez juste le nom des jeux de données alors:

list(file.keys()) 
['Patch_001-inlet', 'Patch_002-outlet', 'Patch_003-wall']