私は numpy と hdf5 が初めてで、Anthony Scopatz による「HDF5 は愛好家向けです」というチュートリアルに従おうとしています。
numpy 配列を hdf5 テーブルに渡していますが、hdf5 から値を読み取ると、エンコードが異なるようです: コードは次のとおりです。
dt = np.dtype([('id',int),('name','S10')])
knights = np.array([(42,'Lancelot'),(32,'Bedivere')])
f.createTable('/','knights',dt)
f.root.knights.append(knights)
f.root.knights[0]
出力:
(12852, '\x00\x00\x00Lancelot')
ここで何が起こっているのですか?元の入力、つまり '42'、'Lancelot' を取得できないのはなぜですか?