Heim > Backend-Entwicklung > Python-Tutorial > Wie lese ich eine Datei in Python ohne Zeilenumbrüche?

Wie lese ich eine Datei in Python ohne Zeilenumbrüche?

DDD
Freigeben: 2024-12-30 20:46:14
Original
732 Leute haben es durchsucht

How to Read a File in Python Without Newlines?

So lesen Sie eine Datei in Python, ohne Zeilenumbrüche beizubehalten

In Python lesen Sie eine Datei mit open(filename, 'r'). readlines() liefert eine Liste von Strings mit Newline-Zeichen am Ende. Dieses Verhalten kann in manchen Fällen unerwünscht sein. In diesem Artikel werden verschiedene Methoden zum Lesen einer Datei ohne Zeilenumbrüche untersucht.

Methode 1: Verwendung von str.splitlines()

Diese Methode liest die gesamte Datei in einen String und teilt es mit der Funktion str.splitlines() in einzelne Zeilen auf. Das Ergebnis ist eine Liste von Zeichenfolgen ohne Zeilenumbrüche:

temp = file.read().splitlines()
Nach dem Login kopieren

Methode 2: Zeilenumbrüche manuell entfernen

Wenn die Listenverständnis- und Slicing-Methode bevorzugt wird, verwenden Sie den folgenden Ansatz kann verwendet werden:

temp = [line[:-1] for line in file]
Nach dem Login kopieren

Diese Lösung geht jedoch davon aus, dass die Datei mit einem Zeilenumbruchzeichen endet. Wenn nicht, verliert die letzte Zeile ihr letztes Zeichen.

Methode 3: Hinzufügen einer neuen Zeile am Ende der Datei

Um den Verlust des letzten Zeichens zu vermeiden, kann eine neue Zeile eingefügt werden Vor dem Lesen am Ende der Datei hinzugefügt:

with open(the_file, 'r+') as f:
    f.seek(-1, 2)
    if f.read(1) != '\n':
        f.write('\n')
        f.flush()
        f.seek(0)
    lines = [line[:-1] for line in f]
Nach dem Login kopieren

Methode 4: Verwenden rstrip()

Diese Methode bietet eine Alternative zum manuellen Entfernen der Zeilenumbrüche:

[line.rstrip('\n') for line in file]
Nach dem Login kopieren

Methode 5: Bedingtes Slicing verwenden

Obwohl weniger lesbar, nutzt diese Methode die boolesche Auswertung von or Operator:

[line[:-(line[-1] == '\n') or len(line)+1] for line in file]
Nach dem Login kopieren

Hinweis: Die readlines()-Methode in Python behält die Zeilenumbrüche in der zurückgegebenen Liste von Zeichenfolgen bei, da readline() selbst sie beibehält.

Das obige ist der detaillierte Inhalt vonWie lese ich eine Datei in Python ohne Zeilenumbrüche?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage