21 lines
600 B
Python
21 lines
600 B
Python
# scopes.shape
|
|
|
|
"""really abstract basic data shape definitions"""
|
|
|
|
class Record:
|
|
|
|
headFields = [] # to be defined by subclass
|
|
|
|
def __init__(self, *headValues, data=None, **kw):
|
|
self.head = {}
|
|
for k, v in kw.items():
|
|
if k in self.headFields:
|
|
self.head[k] = kw.pop(k)
|
|
for ix, hv in enumerate(headValues):
|
|
self.head[self.headFields[ix]] = hv
|
|
for k in self.headFields:
|
|
if self.head.get(k) is None:
|
|
self.head[k] = ''
|
|
setattr(self, k, self.head[k])
|
|
self.data = data or {}
|
|
|