Abrir un archivo zip sin extraerlo en Python
-
Utilice la función
zipfile.ZipFile()
para abrir un archivo zip sin extraerlo temporalmente en Python -
Utilice la función
ZipFile.open()
para abrir un archivo zip sin extraerlo temporalmente en Python
Este artículo explica cómo abrir un archivo zip sin extraerlo temporalmente en el software Python. Para abrir un archivo zip sin extraerlo temporalmente en Python, use la biblioteca Python zipfile
.
Para ello, importe la biblioteca estándar zipfile
. Luego, use cualquiera de las siguientes funciones.
- Utilice la función
zipfile.ZipFile()
en modo lectura. - Utilice la función
ZipFile.open()
en modo lectura.
Antes de comenzar, prepare el archivo zip. Siga los pasos a continuación.
-
Prepara un archivo de texto llamado
mail.txt
con algún contenido dentro de él como:This is from mail.txt
-
Comprime el archivo
mail.txt
. -
Nombre el archivo zip como
mail.zip
.
Utilice la función zipfile.ZipFile()
para abrir un archivo zip sin extraerlo temporalmente en Python
A continuación se muestra un programa de ejemplo que le muestra cómo abrir un archivo zip sin extraerlo temporalmente en Python. Utilice la función zipfile.ZipFile()
en modo lectura de la siguiente manera.
zipfile.ZipFile(file, mode="r")
Aquí, el file
es:
- Una ruta a un archivo (una cadena)
- Un objeto similar a un archivo
- Un objeto parecido a una ruta
Por ejemplo,
import zipfile
archive = zipfile.ZipFile("mail.zip", "r")
# Let us verify the operation..
txtdata = archive.read("mail.txt")
print(txtdata)
Producción :
b'This is from mail.txt'
Utilice la función ZipFile.open()
para abrir un archivo zip sin extraerlo temporalmente en Python
Aquí hay un ejemplo que demuestra cómo abrir un archivo zip sin extraerlo temporalmente en Python.
Aquí, usamos la función open()
en modo lectura.
ZipFile.open(name, mode="r")
El miembro del archivo zip se trata como un objeto similar a un archivo binario. El name
aquí puede ser:
- El nombre de un archivo dentro del zip
- Un objeto
ZipInfo
He aquí un ejemplo.
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())
Producción :
b'This is from mail.txt'