pytables,在嵌套字段中添加行

2024-09-29 17:21:45 发布

您现在位置:Python中文网/ 问答频道 /正文

从这样一个简单的结构开始:

from tables import *

class subTable(IsDescription):
    subCol1= Int64Col(pos=0)
    subCol2= StringCol(itemsize=32, pos=1)
    subCol3= Int64Col(pos=2)

class mainTable(IsDescription):
    column1= Int64Col(pos=0)
    column2= StringCol(itemsize=32, pos=1)
    column3= subTable()

如果我能很好地理解文档,现在我有一个表(mainTable),有3列(column1, column2, column3),每个column3中包含另一个表,还有3列(subCol1, subCol2, subCol3)

所以,现在,用行填充主表是一项简单的工作。在

但是,如何向column3内的每个表添加行??在

当然,如果我错了,我会很感激你的指正。在


Tags: pos结构classcolumn1column2itemsizecolumn3subtable
2条回答

你所做的没有错,只是我认为你不能为subTable设置多行:

from tables import *

class subTable(IsDescription):
    subCol1= Int64Col(pos=0)
    subCol2= StringCol(itemsize=32, pos=1)
    subCol3= Int64Col(pos=2)

class mainTable(IsDescription):
    column1= Int64Col(pos=0)
    column2= StringCol(itemsize=32, pos=1)
    column3= subTable()

hdf5_a = openFile("delete.hdf5", "a")
table = hdf5_a.create_table("/", "test", mainTable)

table.row['column3/subCol1'] = 10
table.append()

因此,您可以使用table.row['column3/subColX']subTable输入值。但不是多行。在

你不能用PyTables来做这件事。在

相关问题 更多 >

    热门问题