我使用PyTables将HDF5数据存储在HDF5文件中,它需要一个助手类来创建一个表。下面是一个示例:
class PacketData(pt.IsDescription):
data = pt.UInt8Col(shape=(128,))
# later code does this:
self.tdata = self.hfile.createTable(self.g, 'packetdata', PacketData,
filters=filters)
是否有一种方法可以在这里使用元类来概括128
?
发布于 2014-03-24 20:54:46
我不认为你需要一个超能力的人。事实上,由于元类是固定在定义类的点上的,所以我不认为它为您提供了将形状参数化的机会。
您可以使用一个类工厂来代替:
def packetdata(n):
class PacketData(pt.IsDescription):
data = pt.UInt8Col(shape=(n,))
return PacketData
self.tdata = self.hfile.createTable(self.g, 'packetdata', packetdata(128),
filters=filters)
https://stackoverflow.com/questions/22620280
复制相似问题