Python Archivo ZIP con ejemplo
โก Resumen inteligente
Python crea archivos ZIP con los mรณdulos integrados shutil y zipfile. Aquรญ aprenderรก a comprimir un directorio completo usando make_archive(), comprimir archivos especรญficos con ZipFile y extract, lista y lee el contenido del archivo.

Python le permite crear rรกpidamente archivos zip/tar.
El siguiente comando comprimirรก todo el directorio
shutil.make_archive(output_filename, 'zip', dir_name)
El siguiente comando le brinda control sobre los archivos que desea archivar.
ZipFile.write(filename)
Cรณmo comprimir un directorio completo en ZIP Python
Estos son los pasos para crear un archivo Zip en Python
Paso 1) Para crear un archivo de almacenamiento desde PythonAsegรบrese de que la declaraciรณn de importaciรณn sea correcta y estรฉ en orden. Aquรญ, la declaraciรณn de importaciรณn para el archivo es from shutil import make_archive
Code Explicaciรณn
- Importar la clase make_archive desde el mรณdulo shutil
- Utilice la funciรณn de divisiรณn para dividir el directorio y el nombre del archivo de la ruta a la ubicaciรณn del archivo de texto (guru99)
- Luego llamamos al mรณdulo โshutil.make_archive(โguru99 archive, โzipโ, root_dir)โ para crear un archivo de almacenamiento, que estarรก en formato zip.
- Luego pasamos el directorio raรญz de las cosas que queremos comprimir. Entonces todo lo que estรฉ en el directorio se comprimirรก.
- Cuando ejecuta el cรณdigo, puede ver que el archivo zip se crea en el lado derecho del panel.
Paso 2) Una vez que haya creado su archivo de almacenamiento, puede hacer clic derecho en el archivo y seleccionar el sistema operativo, y se mostrarรกn sus archivos de almacenamiento como se muestra a continuaciรณn.
Ahora su archivo archive.zip aparecerรก en su sistema operativo (Windows explorer)
Paso 3) Al hacer doble clic en el archivo, verรก la lista de todos los archivos que contiene.
Cรณmo comprimir archivos especรญficos usando ZipFile
Paso 4) In Python Podemos tener mรกs control sobre el archivo ya que podemos definir quรฉ archivo especรญfico incluir en el archivo. En nuestro caso, incluiremos dos archivos en el archivo. โguru99.txtโ y โguru99.txt.bakโ.
Code Explicaciรณn
- Importar clase Zipfile desde un archivo zip Python mรณdulo. Este mรณdulo brinda control total sobre la creaciรณn de archivos zip.
- Creamos un nuevo Zipfile con nombre (โtestguru99.zip, โwโ)
- Para crear una nueva clase Zipfile, es necesario pasar permiso porque es un archivo, por lo que debe escribir informaciรณn en el archivo como newzip.
- Usamos la variable "newzip" para referirnos al archivo zip que creamos.
- Usando la funciรณn de escritura en la variable โnewzipโ, agregamos los archivos โguru99.txtโ y โguru99.txt.bakโ al archivo
Cuando ejecuta el cรณdigo, puede ver que el archivo se crea en el lado derecho del panel con el nombre "guru99.zip".
Nota: : Aquรญ no damos ningรบn comando para "cerrar" el archivo como "newzip.close" porque usamos el bloqueo de alcance "Con", por lo que cuando el programa queda fuera de este alcance, el archivo se limpiarรก y se cerrarรก automรกticamente.
Paso 5) Cuando -> haga clic derecho en el archivo (testguru99.zip) y -> seleccione su sistema operativo (Windows explorer), mostrarรก los archivos almacenados en la carpeta como se muestra a continuaciรณn.
Al hacer doble clic en el archivo โtestguru99.zipโ, se abrirรก otra ventana y en ella se mostrarรกn los archivos incluidos en ella.
Paquete COMPLETE Python Code para crear un archivo ZIP
Aquรญ estรก el cรณdigo completo
Python 2 Ejemplo
import os
import shutil
from zipfile import ZipFile
from os import path
from shutil import make_archive
def main():
# Check if file exists
if path.exists("guru99.txt"):
# get the path to the file in the current directory
src = path.realpath("guru99.txt");
# rename the original file
os.rename("career.guru99.txt","guru99.txt")
# now put things into a ZIP archive
root_dir,tail = path.split(src)
shutil.make_archive("guru99 archive", "zip", root_dir)
# more fine-grained control over ZIP files
with ZipFile("testguru99.zip","w") as newzip:
newzip.write("guru99.txt")
newzip.write("guru99.txt.bak")
if __name__== "__main__":
main()
Python 3 Ejemplo
import os import shutil from zipfile import ZipFile from os import path from shutil import make_archive # Check if file exists if path.exists("guru99.txt"): # get the path to the file in the current directory src = path.realpath("guru99.txt"); # rename the original file os.rename("career.guru99.txt","guru99.txt") # now put things into a ZIP archive root_dir,tail = path.split(src) shutil.make_archive("guru99 archive","zip",root_dir) # more fine-grained control over ZIP files with ZipFile("testguru99.zip", "w") as newzip: newzip.write("guru99.txt") newzip.write("guru99.txt.bak")
Cรณmo hacer Extract (Descomprimir) un archivo ZIP en Python
Para descomprimir un archivo, รกbralo en modo de lectura con ZipFile y llame a extracalto() a extraccada archivo, o extract() para extraer un solo miembro.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: myzip.extractall("extracted_files")
La extracEl mรฉtodo tall() escribe todos los archivos archivados en la carpeta que se le pasa como argumento.
Cรณmo listar los archivos en un archivo ZIP Archive
Puedes inspeccionar un archivo sin extracting it. El mรฉtodo namelist() devuelve los nombres de todos los archivos almacenados dentro del ZIP.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: print(myzip.namelist())
Esto imprime una lista de los nombres de los archivos contenidos en el archivo comprimido.
Cรณmo leer un archivo dentro de un archivo ZIP Archive
Puedes leer un archivo miembro directamente desde el archivo comprimido sin descomprimirlo.ping guรกrdalo en el disco usando el mรฉtodo open() de ZipFile.
from zipfile import ZipFile with ZipFile("testguru99.zip", "r") as myzip: with myzip.open("guru99.txt") as f: print(f.read())
Esto resulta รบtil cuando solo se necesita el contenido de un archivo de un archivo comprimido grande.







