Terry J. Reedy <tjre...@udel.edu> added the comment: This issue was 'reopened' by #31590.
I can understand inconsistency as a 'design bug', but design bugs are not code bugs, and fixing a design bugs is an enhancement issue, not a behavior issue. It is not clear to me why, with the specified dialect, "writer.writerow(['one\nelement'])" is correct in writing 'one\\\nelement\n'. The doc for Dialect.excapechar says "A one-character string used by the writer to escape the delimiter if quoting is set to QUOTE_NONE and the quotechar if doublequote is False." Yes, quoting is set to QUOTE_NONE, but \n is the lineterminator, not the delimiter (or the quotechar). It looks to me that escaping the lineterminator might be a bug. In any case, 'one\nelement' and 'one\\\nelement' are each 2 physical lines. I don't see anything in the doc about csv.reader joining physical lines into 'logical' lines the way that compile() does. ---------- nosy: +terry.reedy _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue15927> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com