Ich lese durch die ZIPfile-Module docs, aber konnte nicht verstehen, wie eine Datei entpacken, nur wie eine Datei zip. Wie entzippe ich den gesamten Inhalt einer Zip-Datei in das gleiche Verzeichnis?Entpacken von Dateien in Python
Antwort
import zipfile
zip_ref = zipfile.ZipFile(path_to_zip_file, 'r')
zip_ref.extractall(directory_to_extract_to)
zip_ref.close()
Das ist so ziemlich!
Verwenden Sie die extractall
Methode, wenn Sie Python verwenden 2.6+
zip = ZipFile('file.zip')
zip.extractall()
Muss nicht angegeben werden ein Ziel (zip.extractall (Ziel))? – asonnenschein
Nicht, wenn Sie nur in das gleiche Verzeichnis extrahieren wie die ZIP-Datei –
@DanGayle scheint die ZIP-Datei in das aktuelle Arbeitsverzeichnis zu extrahieren, NICHT den Speicherort der ZIP-Datei –
Wenn Sie Python verwenden 3.2 oder höher:
import zipfile
with zipfile.ZipFile("file.zip","r") as zip_ref:
zip_ref.extractall("targetdir")
Sie nicht die Nähe verwenden müssen oder versuchen/Fang damit an, wie es die context manager Konstruktion verwendet
ZipFile funktioniert auch als Context Manager in 2.7 oder später: https://docs.python.org/2/library/zipfile.html#zipfile.ZipFile – blueCat
Was ist, wenn der Inhalt des ZIP-Archivs identisch sind, in allen ZIP-Archiven? Wie wird der Inhalt vor dem Extrahieren umbenannt? Beispiel: 1.zip 2.zip .. alle enthalten content.txt: extrahieren alle wie 1content.txt 2content.txt? – iratzhash
@Rahul - und welche Bibliothek importiere ich? – 3kstc
@ 3kstc 'import zipfile' –