#!python3
__all__ = ['read_conf']
import csv
class conf_dialect(csv.Dialect):
delimiter = '='
quotechar = '"'
escapechar = '\\'
doublequote = True
skipinitialspace = True
lineterminator = '\n'
quoting = csv.QUOTE_MINIMAL
def genestrip(geneorg):
for line in geneorg:
line = line.strip()
if not len(line) or line.startswith('#'):
continue
yield line
def read_conf(filename):
with open(filename, 'r', encoding='utf8') as linegen:
reader = csv.reader(genestrip(linegen), dialect=conf_dialect)
dic = {row[0].strip(): row[1] for row in reader if len(row) >= 2}
return dic