【发布时间】:2020-08-31 09:33:29
【问题描述】:
我在读取存储在目录中的多个 HDF5 文件时遇到了问题。我希望能够读取所有这些,然后打印存储在 HDF5 文件中的数据集之一。我有一个文件夹,里面装满了相同的 HDF5 文件(相同的 4 个数据集,每个数据集具有相同的形状),但它们的数据不同(每个数据集存储的值不同)。为什么我在运行时遇到错误?
import h5py
import numpy as np
import os
directory = '/Users/folder'
# for i in os.listdir(directory):
for i in directory:
# if i.endswith('.h5'):
with h5py.File(i, 'r') as data:
extent = np.array(np.degrees(data['extent']))
print(extent)
这是第一个代码 sn-p 的错误:
OSError: Unable to open file (file read failed: time = Thu May 14 12:46:54 2020
, filename = '/', file descriptor = 61, errno = 21, error message = 'Is a directory', buf = 0x7ffee42433b8, total read size = 8, bytes this sub-read = 8, bytes actually read = 18446744073709551615, offset = 0)
但我可以在单个 HDF5 文件上运行它...
file = 'file.h5'
data = h5py.File(file,'r')
extent = np.array(np.degrees(data['extent']))
print(extent)
它输出的正是它应该是什么:
[ 1. 14. 180. -180.]
【问题讨论】:
标签: python python-3.x operating-system glob hdf5