Wie man Dateien in Python entpackt
-
Entpacken von Dateien in Python mit der
extractall()
Methode in das Arbeitsverzeichnis -
Entpacken von Dateien in Python mit der
extractall()
Methode in ein anderes Verzeichnis -
Entpacken von Dateien in Python mit der
extractall()
Methode basierend auf der Bedingung -
Entpacken von Dateien in Python mit der Methode
unpack_archive()
Eine ZIP
Datei hat ein Archivdateiformat und hilft bei der verlustfreien Datenkompression. Eine einzelne ZIP
-Datei kann mehr als eine komprimierte Datei enthalten. In einer ZIP
-Datei werden mehrere Dateien schneller übertragen als in einer einzigen Datei, und die Größe der Daten wird dadurch verringert. Das in Python eingebaute ZipFile
-Modul kann zum Entpacken der Zip-Dateien verwendet werden.
In diesem Artikel werden die verschiedenen Methoden zum Extrahieren der komprimierten oder Zip-Dateien in Python besprochen.
Entpacken von Dateien in Python mit der extractall()
Methode in das Arbeitsverzeichnis
Zuerst importieren wir das in Python eingebaute zipfile
-Modul mit dem unten stehenden Befehl.
from zipfile import ZipFile
Der vollständige Beispielcode lautet wie folgt:
from zipfile import ZipFile
test_file_name = "my_files.zip"
with ZipFile(test_file_name, "r") as zip:
zip.printdir()
zip.extractall()
Das r
in der Funktion ZipFile
repräsentiert den Lesevorgang der Datei, während die Funktion extractall()
den Inhalt der Zip-Datei in das aktuelle Arbeitsverzeichnis extrahiert.
Ausgabe:
File Name Modified Size
file1.txt 2020-11-09 23:03:06 0
file2.txt 2020-11-09 23:03:18 0
Entpacken von Dateien in Python mit der extractall()
Methode in ein anderes Verzeichnis
Diese Methode extrahiert die Zip-Dateien, aber in ein anderes Verzeichnis. Der Hauptunterschied besteht darin, dass wir bei der extractall()
Methode das Zielverzeichnis als Argument übergeben.
Der vollständige Beispielcode lautet wie folgt:
from zipfile import ZipFile
with ZipFile("my_files.zip", "r") as zip:
zip.extractall("temp")
print("File is unzipped in temp folder")
Ein neues Verzeichnis temp
wird im aktuellen Arbeitsverzeichnis angelegt, und alle Zip-Dateien werden dort extrahiert.
Ausgabe:
Files are unzipped in temp folder
Entpacken von Dateien in Python mit der extractall()
Methode basierend auf der Bedingung
Diese Methode ist praktisch, wenn Sie eine große Anzahl von Dateien in einer Zip-Datei haben und Sie Dateien mit einer bestimmten Erweiterung extrahieren müssen. Wir werden zum Beispiel .txt
Dateien aus der Zip-Datei extrahieren.
Der vollständige Beispielcode lautet wie folgt:
from zipfile import ZipFile
with ZipFile("my_files.zip", "r") as obj_zip:
FileNames = obj_zip.namelist()
for fileName in FileNames:
if fileName.endswith(".txt"):
zipObj.extract(fileName, "temp_txt")
Die Funktion namelist()
gibt die Namen aller Dateien in der Zip-Datei zurück.
Die Methode endswith()
prüft, ob der Dateiname mit .txt
endet. Wenn dies der Fall ist, extrahiert die Funktion extract()
die .txt
-Dateien in den Ordner temp_txt
im aktuellen Arbeitsverzeichnis.
Entpacken von Dateien in Python mit der Methode unpack_archive()
Diese Methode verwendet das in Python eingebaute shutil
-Modul. Es extrahiert alle Formate der archivierten Dateien.
Der vollständige Beispielcode lautet wie folgt:
import shutil
shutil.unpack_archive("test.zip")
Die extrahierten Dateien befinden sich im aktuellen Arbeitsverzeichnis, in dem Sie dieses Skript ausführen.