Revision 5736
Added by Aaron Marcuse-Kubitza over 12 years ago
lib/csvs.py | ||
---|---|---|
172 | 172 |
Filter.__init__(self, filter_, |
173 | 173 |
streams.LineCountInputStream(StreamFilter(reader))) |
174 | 174 |
|
175 |
class RowNumFilter(Filter): |
|
175 |
class RowNumFilter(ColInsertFilter):
|
|
176 | 176 |
'''Adds a row # column at the beginning of each row''' |
177 | 177 |
def __init__(self, reader): |
178 |
def filter_(row): return [self.reader.line_num]+row |
|
179 |
Filter.__init__(self, filter_, |
|
180 |
streams.LineCountInputStream(StreamFilter(reader))) |
|
178 |
def mk_value(row, row_num): return row_num |
|
179 |
ColInsertFilter.__init__(self, reader, mk_value, 0) |
|
181 | 180 |
|
182 | 181 |
class InputRewriter(StreamFilter): |
183 | 182 |
'''Wraps a reader, writing each row back to CSV''' |
Also available in: Unified diff
csvs.py: RowNumFilter: Use new ColInsertFilter