row.py
644 Bytes
class Row(object):
def __init__(self, fieldnames):
self.fieldnames = fieldnames
self.values = dict()
for name in fieldnames:
self.values[name] = ''
self.count = len(fieldnames)
def __setitem__(self, name, value):
self.values[name] = value
def __getitem__(self, name):
return self.values[name]
def __iter__(self):
self.index = 0
return self
def __next__(self):
if self.index == self.count:
raise StopIteration
index = self.index
self.index += 1
name = self.fieldnames[index]
return self[name]