Es gab einige (persönliche) Fallstricke beim Lesen einer gzip-komprimierten Textdatei, daher habe ich sie zusammengefasst.
Der Standard-Lesemodus für Dateien ist binär, daher liest der folgende Code jede Zeile binär.
import gzip
with gzip.open("test.txt.gz", "r") as fi:
for line in fi:
print(line)
Um es als Text zu lesen, lesen Sie es beim Öffnen der Datei im RT-Modus.
import gzip
with gzip.open("test.txt.gz", "rt") as fi:
for line in fi:
print(line)
Selbst wenn Sie die Codierung standardmäßig angeben, wird sie ignoriert, sodass Sie die Codierung beim Öffnen der Datei erneut angeben müssen. Mit anderen Worten, am Ende kann es als Textdatei mit dem folgenden Code gelesen werden.
import gzip
with gzip.open("test.txt.gz", "rt", "utf_8") as fi:
for line in fi:
print(line)
Vielleicht ist es das gleiche mit anderen komprimierten Dateien, aber ich habe es nicht versucht.
Recommended Posts