Warum hebt dieser Code csv.Error auf?

8

Ich versuche CSV mit Pythons eingebautem csv -Modul zu schreiben.

> %Vor%

Die erwartete Ausgabe ist:

%Vor%

Allerdings bekomme ich das:

%Vor%

Die Dokumentation lautet:

  

Wenn das aktuelle Trennzeichen in den Ausgabedaten vorkommt, wird das aktuelle Escape-Zeichen vorangestellt. Wenn "escapchar" nicht festgelegt ist, löst der Writer "Error" aus, wenn Zeichen gefunden werden, die eine Escape-Operation erfordern.

Nun erscheint das Trennzeichen ('|', das Pipe-Zeichen) nirgendwo in den Daten. Warum versucht der CSV-Writer etwas zu entkommen?

    
misha 25.04.2014, 14:48
quelle

1 Antwort

12

Einstellung quoting=csv.QUOTE_NONE ist nicht genug; Sie müssen auch quotechar auf eine leere Zeichenfolge festlegen:

%Vor%

Andernfalls versucht csv.writer() , alle vorhandenen quotechar -Zeichen zu umgehen, aber dafür muss csv.escapechar gesetzt werden.

    
Martijn Pieters 25.04.2014, 14:53
quelle

Tags und Links