Запись в составной набор данных с помощью строки переменной длины через h5py (HDF5)

Мне удалось создать составной набор данных, состоящий из неподписанного целого и строки переменной длины в моем файле HDF5, используя h5py, но я не могу записать в него.

dt = h5py.special_dtype(vlen=str)
dset = fout.create_dataset(ver, (1,), dtype=np.dtype([("time", np.uint64),("value", dt)]))

Я довольно легко записал в другие составные наборы данных, установив конкретные столбцы набора составных данных равными существующему массиву пустышек.

Теперь у меня проблемы с записью в составной набор данных со строкой переменной длины. Numpy не поддерживает строку переменной длины, поэтому я не могу создать массив numpy до того, как он будет содержать значение.

Моей следующей мыслью было записать индивидуальное значение в рассматриваемый столбец, и это работает для неподписанного типа int. Когда я пытаюсь записать строку в поле строки переменной длины в наборе составных данных, я получаю:

    dset["value"] = str("blah")
  File "D:\Anaconda3\lib\site-packages\h5py\_hl\dataset.py", line 508, in __setitem__
    val = val.astype(numpy.dtype([(names[0], dtype)]))
ValueError: Setting void-array with object members using buffer.

Любое руководство будет высоко ценится.

Ответы на вопрос(1)

Ваш ответ на вопрос