Python >> Tutoriel Python >  >> Python

Créer une archive Zip d'un répertoire à l'aide de Python

Le fichier zip est un format de fichier d'archive contenant un ou plusieurs fichiers compressés. Il prend en charge la compression de données sans perte et est le format d'archive le plus couramment utilisé dans le monde. Cet article nous aidera à apprendre comment convertir un répertoire en fichier zip à l'aide du langage de programmation Python.

Utilisation du shutil Bibliothèque pour créer une archive Zip d'un répertoire

Le shutil La bibliothèque fait partie du Python standard. Il offre plusieurs fonctions de haut niveau à exécuter sur des fichiers ou des groupes de fichiers, telles que la copie, la compression, la décompression et la suppression. Il a une fonction ou une méthode du nom de make_archive() qui peut convertir n'importe quel répertoire ou dossier en un fichier d'archive zip. Voici les arguments les plus utilisés de cette fonction.

  • base_name :Nom du fichier à créer accompagné du chemin et sans aucune extension de format.
  • format :C'est le nom du format de l'archive. Les options disponibles sont zip (nécessite zlib module), tar , gztar (nécessite zlib module), bztar (nécessite bz2 module), et xztar (nécessite lzma module).
  • root_dir :C'est le répertoire qui sera le répertoire racine de l'archive, ce qui signifie que tous les chemins de l'archive lui seront relatifs. La valeur par défaut est le répertoire courant.
  • base_dir :C'est le répertoire à partir duquel commence l'archivage. Sa valeur doit être relative au root_dir . La valeur par défaut est le répertoire courant.

Maintenant que nous en avons terminé avec une brève théorie sur le paquet et la fonction requise, apprenons comment nous pouvons utiliser cette fonction pour créer une archive zip à partir d'un répertoire.

import os
import shutil

filename = "compressed"
format = "zip"
directory = os.getcwd()
shutil.make_archive(filename, format, directory)

Le code ci-dessus compressera le répertoire de travail actuel dans un fichier zip et nommera le fichier compressed.zip . Notez que nous n'avons pas mentionné l'extension (.zip ) dans le base_name .

Comment télécharger et installer 7-Zip sur Windows 10 gratuitement !
Prochain article