在 h5py 中使用简单键检查的 hdf5 警告
hdf5 warning with simple key check in h5py
当我用 h5py 打开 h5 文件 file.h5
并检查某个键时:
那么这不起作用:
found = "data" in h5File.keys() # warning on this line
if found:
a = h5File["data"][...]
并发出以下警告:
HDF5-DIAG: Error detected in HDF5 (1.8.15-patch1) thread 0:
#000: /cluster/home/nuetzig/installHDF5/hdf5-1.8.15-patch1/src/H5Gdeprec.c line 893 in H5Gget_objinfo(): not a location
major: Invalid arguments to routine
minor: Inappropriate type
#001: /cluster/home/nuetzig/installHDF5/hdf5-1.8.15-patch1/src/H5Gloc.c line 173 in H5G_loc(): invalid file ID
major: Invalid arguments to routine
minor: Bad value
但是从 h5File.keys()
中创建一个类型为 KeysViewWithLock(<HDF5 file "file.h5" (mode r)>)
的集合
作品:
found = "data" in set(h5File.keys())
if found:
a = h5File["data"][...]
有人知道问题出在哪里吗?
我不得不说,该文件驻留在集群上的并行网络存储 (Lustre) 上...
注意:同样 "data" in h5File
不起作用
问题已解决:
已手动重新安装 h5py
通过
python3 setup.py configure --hdf5-version=1.8.15
python3 install
不知为何版本没有设置,用的是1.8.4,不知道为什么...
当我用 h5py 打开 h5 文件 file.h5
并检查某个键时:
那么这不起作用:
found = "data" in h5File.keys() # warning on this line
if found:
a = h5File["data"][...]
并发出以下警告:
HDF5-DIAG: Error detected in HDF5 (1.8.15-patch1) thread 0:
#000: /cluster/home/nuetzig/installHDF5/hdf5-1.8.15-patch1/src/H5Gdeprec.c line 893 in H5Gget_objinfo(): not a location
major: Invalid arguments to routine
minor: Inappropriate type
#001: /cluster/home/nuetzig/installHDF5/hdf5-1.8.15-patch1/src/H5Gloc.c line 173 in H5G_loc(): invalid file ID
major: Invalid arguments to routine
minor: Bad value
但是从 h5File.keys()
中创建一个类型为 KeysViewWithLock(<HDF5 file "file.h5" (mode r)>)
的集合
作品:
found = "data" in set(h5File.keys())
if found:
a = h5File["data"][...]
有人知道问题出在哪里吗?
我不得不说,该文件驻留在集群上的并行网络存储 (Lustre) 上...
注意:同样 "data" in h5File
不起作用
问题已解决:
已手动重新安装 h5py 通过
python3 setup.py configure --hdf5-version=1.8.15
python3 install
不知为何版本没有设置,用的是1.8.4,不知道为什么...