h5py 라는 확장자를 사용하기 위해서 코드를 쓸 일이 있었는데,

다음과 같은 에러가 발생.

 

 

NameError: name 'h5py' is not defined


맨 위쪽에 import 부에서 해당 코드를 넣으면 된다.

 

import h5py
(필요 시에 추가할 코드: import numpy as np)

 

이렇게 하면 에러가 해결된다.

아래는 내가 해결한 코드로 수행한 결과이다.

 

나중에 내가 참고를 하기 위해, 해당 코드를 넣어두겠다.

 

from os import listdir
from os.path import splitext
import h5py
import numpy as np 

def convert_file(input_dir, filename, output_dir):
    filepath = input_dir + '/' + filename
    fin = open(filepath, 'rb')
    binary_data = fin.read()
    new_filepath = output_dir + '/' + filename[:-4] + '.hdf5'
    f = h5py.File(new_filepath)
    dt = h5py.special_dtype(vlen=np.dtype('uint8'))
    dset = f.create_dataset('binary_data', (100, ), dtype=dt)
    dset[0] = np.fromstring(binary_data, dtype='uint8')


for file in listdir('./data/'):
	filename, extension = splitext(file)
	convert_file('./data', file, './data2')

 

코드는 해당 사이트에서 참고하여 만들었다.

stackoverflow.com/questions/28170623/how-to-read-hdf5-files-in-python