Apri un file zip senza estrarlo in Python
-
Usa la funzione
zipfile.ZipFile()
per aprire un file zip senza estrarlo temporaneamente in Python -
Usa la funzione
ZipFile.open()
per aprire un file zip senza estrarlo temporaneamente in Python
Questo articolo spiega come aprire un file zip senza estrarlo temporaneamente nel software Python. Per aprire un file zip senza estrarlo temporaneamente in Python, usa la libreria Python zipfile
.
Per questo, importa la libreria standard zipfile
. Quindi, utilizzare una delle seguenti funzioni.
- Utilizzare la funzione
zipfile.ZipFile()
in modalità lettura. - Utilizzare la funzione
ZipFile.open()
in modalità lettura.
Prima di iniziare, prepara il file zip. Segui i passaggi seguenti.
-
Prepara un file di testo chiamato
mail.txt
con del contenuto al suo interno come:This is from mail.txt
-
Comprimi il file
mail.txt
. -
Assegna al file zip un nome
mail.zip
.
Usa la funzione zipfile.ZipFile()
per aprire un file zip senza estrarlo temporaneamente in Python
Di seguito è riportato un programma di esempio che mostra come aprire un file zip senza estrarlo temporaneamente in Python. Utilizzare la funzione zipfile.ZipFile()
in modalità di lettura nel modo seguente.
zipfile.ZipFile(file, mode="r")
Qui, il file
è:
- Un percorso a un file (una stringa)
- Un oggetto simile a un file
- Un oggetto simile a un percorso
Per esempio,
import zipfile
archive = zipfile.ZipFile("mail.zip", "r")
# Let us verify the operation..
txtdata = archive.read("mail.txt")
print(txtdata)
Produzione:
b'This is from mail.txt'
Usa la funzione ZipFile.open()
per aprire un file zip senza estrarlo temporaneamente in Python
Ecco un esempio che mostra come aprire un file zip senza estrarlo temporaneamente in Python.
Qui usiamo la funzione open()
in modalità lettura.
ZipFile.open(name, mode="r")
Il membro del file zip viene trattato come un oggetto simile a un file binario. Il name
qui può essere:
- Il nome di un file all’interno dello zip
- Un oggetto
ZipInfo
Ecco un esempio.
import zipfile
with zipfile.ZipFile("mail.zip") as thezip:
with thezip.open("mail.txt", mode="r") as thefile:
# Let us verify the operation..
print(thefile.read())
Produzione:
b'This is from mail.txt'