Проверьте, существует ли узел в h5py

Хотите знать, есть ли простой способ проверить, существует ли узел в файле HDF5, используя h5py.

Я не смог ничего найти в документах, поэтому сейчас я использую исключения, что ужасно.

# check if node exists
# first assume it exists
e = True
try:
  h5File["/some/path"]
except KeyError:
  e = False # now we know it doesn't

Чтобы добавить контекст: я использую это, чтобы определить, существует ли узел, прежде чем пытаться создать новый узел с тем же именем.

3 ответа

Решение
e = "/some/path" in h5File

Является ли. Это очень кратко упоминается в Group документация

Вы также можете просто использовать require_group() метод для групп. H5py Docs.

После проверки документации в группе документов. Я предполагаю, что вы можете использовать метод keys объекта group для проверки перед использованием:

# check if node exists
# first assume it doesn't exist
e = False
node = "/some/path"
if node in h5file.keys():
    h5File[node]
    e = True
Другие вопросы по тегам