From cca35aadd6edf9d2be33752b5225703ec387bba9 Mon Sep 17 00:00:00 2001 From: Matthias Diener <mdiener@illinois.edu> Date: Sat, 29 Aug 2020 17:23:11 -0500 Subject: [PATCH] address AK's comments --- pytools/__init__.py | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/pytools/__init__.py b/pytools/__init__.py index 5a90817..d449a72 100644 --- a/pytools/__init__.py +++ b/pytools/__init__.py @@ -1597,8 +1597,9 @@ class Table: return "\n".join(lines) - def csv(self, dialect='excel', **fmtparams): + def csv(self, dialect='excel', csv_kwargs=None): """Returns a string containing a CSV representation of the table. + The `dialect` and `csv_kwargs` parameters are passed to :func:`csv.writer`. .. doctest :: @@ -1613,15 +1614,18 @@ class Table: import csv import io + if csv_kwargs is None: + csv_kwargs = {} + # Default is '\r\n' - if 'lineterminator' not in fmtparams: - fmtparams['lineterminator'] = '\n' + if 'lineterminator' not in csv_kwargs: + csv_kwargs['lineterminator'] = '\n' output = io.StringIO() - writer = csv.writer(output, dialect, **fmtparams) + writer = csv.writer(output, dialect, **csv_kwargs) writer.writerows(self.rows) - return output.getvalue().rstrip(fmtparams['lineterminator']) + return output.getvalue().rstrip(csv_kwargs['lineterminator']) def latex(self, skip_lines=0, hline_after=None): if hline_after is None: -- GitLab