Wie sieht es am besten aus, wenn eine Textzeichenfolge unbekannter Quelle existiert, um eine bekannte Zeilenende-Konvention zu haben?
Normalerweise mache ich:
%Vor%... aber das behandelt nicht "gemischte" Textdateien von völlig konfusen Konventionen (Ja, sie existieren noch!).
Der Oneliner von dem, was ich mache, ist natürlich:
%Vor%... darum bitte ich nicht.
Die Gesamtzahl der Zeilen sollte danach gleich sein, also keine Leerzeilen mehr entfernen.
Teilen
%Vor%.. sollte alle zu 5 Zeilen führen. In einem gemischten Kontext wird bei Splitlines davon ausgegangen, dass '\ r \ n' eine einzelne logische Newline ist, die zu 4 Zeilen für die letzten beiden Testfälle führt.
Hm, ein gemischter Kontext, der '\ r \ n' enthält, kann durch Vergleichen des Ergebnisses von splitlines () und split ('\ n') und / oder split ('\ r') ...
... aber das behandelt nicht "gemischte" Textdateien von völlig konfusen Konventionen (Ja, sie existieren noch!)
Eigentlich sollte es gut funktionieren:
%Vor%Welche Version von Python verwenden Sie?
BEARBEITEN: Ich sehe immer noch nicht, wie splitlines()
nicht für dich funktioniert:
Soweit ich weiß, teilt splitlines()
die Liste nicht zweimal oder so.
Können Sie ein Beispiel der Art der Eingabe einfügen, die Ihnen Probleme bereitet?
Gibt es noch mehr Konventionen als \r\n\
und \n
? Ersetzen Sie einfach \r\n
, wenn Sie keine Zeilen möchten.
Tags und Links python newline line-breaks