Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich Zeilenumbrüche effizient aus den mit Pythons „readlines()' gelesenen Dateidaten entfernen?

Wie kann ich Zeilenumbrüche effizient aus den mit Pythons „readlines()' gelesenen Dateidaten entfernen?

DDD
DDDOriginal
2024-12-16 03:29:10770Durchsuche

How Can I Efficiently Remove Newlines from File Data Read with Python's `readlines()`?

Neue Zeilen aus Dateidaten in Python entfernen

Beim Lesen einer Datei in Python mit der Methode readlines() enthalten die resultierenden Listenelemente Zeilenumbrüche Am Ende. Um diese Zeilenumbrüche zu beseitigen, stehen mehrere Ansätze zur Verfügung.

Eine Methode besteht darin, die Funktion „splitlines()“ von string zu verwenden, um Zeilen in Zeilenumbrüchen zu teilen, nachdem die gesamte Datei gelesen wurde:

temp = file.read().splitlines()

Alternativ können Sie dies tun Entfernen Sie die Zeilenumbrüche manuell:

temp = [line[:-1] for line in file]

Hinweis: Bei dieser Methode wird davon ausgegangen, dass die Datei mit einem Zeilenumbruch endet. andernfalls wird die letzte Zeile abgeschnitten.

Um sicherzustellen, dass ein abschließender Zeilenumbruch vorhanden ist, können Sie einen manuell hinzufügen:

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]

Eine andere Möglichkeit besteht darin, Strip() zum Entfernen von Zeilenumbrüchen zu verwenden :

[line.rstrip('\n') for line in file]

Der Prägnanz halber können Sie auch Folgendes verwenden Ansatz:

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

Readlines() verstehen

Die readlines()-Methode iteriert über readline(), das Zeilenumbrüche einschließt. Dies gilt auch für readlines(). Aus Konsistenzgründen fügt writelines() keine Zeilenumbrüche hinzu, um sicherzustellen, dass bei Verwendung beider Methoden eine exakte Kopie erstellt wird.

Das obige ist der detaillierte Inhalt vonWie kann ich Zeilenumbrüche effizient aus den mit Pythons „readlines()' gelesenen Dateidaten entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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