lump.csv module

Module providing our own CSV file parser with support for whitespace trimming, empty lines filtering and comment lines.

As also used in https://github.com/ebu/benchmarkstt

exception lump.csv.CSVParserError(message, line, char, index)[source]

Bases: ValueError

Some error occured while attempting to parse the file

class lump.csv.DefaultDialect[source]

Bases: lump.csv.Dialect

commentchar = '#'
delimiter = ','
ignoreemptylines = True
quotechar = '"'
trimleft = ' \t\n\r'
trimright = ' \t\n\r'
class lump.csv.Dialect[source]

Bases: object

commentchar = None
delimiter = None
quotechar = None
trimleft = None
trimright = None
exception lump.csv.InvalidDialectError[source]

Bases: ValueError

An invalid dialect was supplied

class lump.csv.Line[source]

Bases: list

lineno
class lump.csv.Reader(file: TextIO, dialect: lump.csv.Dialect, debug=None)[source]

Bases: object

CSV-like file reader with support for comment chars, ignoring empty lines and whitespace trimming on both sides of each field.

exception lump.csv.UnallowedQuoteError(message, line, char, index)[source]

Bases: lump.csv.CSVParserError

A quote is not allowed there

exception lump.csv.UnclosedQuoteError(message, line, char, index)[source]

Bases: lump.csv.CSVParserError

A quote wasn’t properly closed

exception lump.csv.UnknownDialectError[source]

Bases: ValueError

An unknown dialect was requested

class lump.csv.WhitespaceDialect[source]

Bases: lump.csv.DefaultDialect

delimiter = ' \t'
lump.csv.reader(file: TextIO, dialect: Union[None, str, lump.csv.Dialect] = None, **kwargs) → lump.csv.Reader[source]