Python

Utiliser Python pour compresser des fichiers

Utiliser Python pour compresser des fichiers
La taille des données augmentant de manière exponentielle chaque jour, votre préoccupation quant à la manière de conserver lesdites données sans déborder vos périphériques de stockage est valable. La compression des fichiers donne des fichiers beaucoup plus petits appelés archives. Ces archives contiennent toutes vos données sous leur forme originale mais avec des tailles considérablement réduites. Ce processus peut être effectué simplement en cliquant avec le bouton droit sur un fichier/un groupe de fichiers et en sélectionnant l'option « Ajouter à l'archive ». Le même processus peut également être effectué via Python, et c'est ce dont nous discuterons à partir d'ici.

Préparer l'environnement Python

Pour commencer à utiliser Python, vous devez vous assurer que vous l'avez correctement installé et que tout ce qui concerne ses dépendances est à jour. L'une des premières choses à faire avant d'installer quoi que ce soit d'autre est de taper la commande suivante :

sudo apt-get mise à jour

Cette commande effectue une vérification de mise à jour pour tous les packages installés et recherche les nouveaux packages qui ont été ajoutés dans les référentiels. Une fois que ce programme s'est exécuté avec succès, il est maintenant temps de vérifier si python a été correctement installé. Cela peut être confirmé en tapant la commande suivante dans la fenêtre du terminal :

python3 -v

Si tout s'est déroulé comme prévu, vous devriez voir un numéro de version en sortie. Si vous êtes arrivé à ce point sans aucune erreur, vous pouvez maintenant télécharger un IDE pour rendre l'expérience python bien meilleure. Pour ça, nous utiliserons le cahier Jupyter. Pour cela, vous devez exécuter la commande suivante :

sudo apt-get -y install ipython ipython notebook && pip install jupyter

Vous êtes maintenant suffisamment préparé pour écrire des programmes Python simples qui peuvent compresser .zip et décompressez-les également.

Pour démarrer Jupyter notebook, vous devez taper la commande suivante dans le terminal : jupyter notebook (Remarque : l'interface IDE que vous verrez dans les captures d'écran ci-dessous sera un peu différente de votre notebook Jupyter standard. Tout le reste fonctionne de la même manière)

Une fois la commande exécutée, elle ouvrira l'interface du bloc-notes Jupyter dans votre navigateur Web et, à partir de là, vous pourrez commencer à coder en créant un nouveau fichier de bloc-notes. Lorsque cela sera fait, vous pourrez désormais coder vos programmes d'archivage sans aucun obstacle.

Les importations nécessaires

Maintenant que nous sommes passés à la partie codage, commençons par effectuer d'abord les importations nécessaires dont nous aurons besoin pour réaliser cette tâche. Si nous voulons simplement créer un programme qui ne fait rien d'autre que créer des fichiers zip à partir de fichiers existants, nous n'aurons qu'à importer deux modules :

zip et système d'exploitation

Le module 'zipfile' est assez explicite. Il nous fournit des fonctions très faciles à utiliser qui nous permettent de créer des fichiers zip et d'ajouter des répertoires, des fichiers et des sous-répertoires aux fichiers zip nouvellement créés avec un minimum d'effort. Le module a également de nombreuses autres utilisations disponibles, et si vous souhaitez vérifier son véritable potentiel, n'hésitez pas à rechercher sa documentation en ligne sur Google.

Le module 'os' nous permet de gérer le chemin des fichiers dans nos programmes. Il nous permet de visualiser les répertoires et de lister leur contenu de la manière la plus simple possible. Lorsque ces deux bibliothèques sont utilisées ensemble, vous pourrez facilement créer des programmes très robustes pour gérer les tâches de compression pour vous.

La fermeture éclair commence ici

Lorsque vous exécutez le code de l'image ci-dessous dans votre bloc-notes, vous verrez qu'un fichier zip a été créé dans le répertoire et que sa taille est également considérablement inférieure au fichier d'origine. L'exemple dont nous avons parlé impliquait un seul fichier.

Si nous voulons aller plus loin en ajoutant des répertoires et plusieurs chemins à notre fichier zip, nous devrons exécuter l'extrait de code suivant.

Encore une fois, après avoir exécuté le script, un nouveau fichier zip vous sera présenté dans le répertoire dans lequel vous vous trouvez actuellement, et sa taille sera bien inférieure à la taille combinée de son contenu.

Décompresser les fichiers compressés

Vous l'avez peut-être déjà deviné, et c'est vrai. Avec les bibliothèques que nous utilisons, presque toutes les tâches triviales auxquelles nous pouvons penser ont été soigneusement conçues dans des solutions en une seule ligne pour la plupart, et elles sont très efficaces. Il en est de même pour décompresser le contenu des fichiers. Le même module zipfile sera utilisé ici, et après avoir référencé le chemin d'accès au fichier, nous appellerons simplement une fonction appelée extraire tout qui prendra dans ses arguments le chemin où l'on veut décompresser le fichier zip en.

Pourquoi choisir de programmer cela?

Eh bien, la réponse à cette question est très simple ; automatisation. Si vous travaillez avec de grandes quantités de données, vous aurez évidemment besoin d'un moyen de réduire le travail manuel impliqué. En 2019, si quelque chose peut être automatisé, il devrait être automatisé. Il est tout simplement inutile de faire une tâche redondante qui peut être effectuée beaucoup plus efficacement par une solution très rentable. L'énergie qui serait gaspillée pour créer des fichiers zip peut autrement être utilisée pour faire quelque chose de productif.

Comment modifier les paramètres de la souris et du pavé tactile à l'aide de Xinput sous Linux
La plupart des distributions Linux sont livrées avec la bibliothèque "libinput" par défaut pour gérer les événements d'entrée sur un système. Il peut ...
Remappez les boutons de votre souris différemment pour différents logiciels avec X-Mouse Button Control
Peut-être que vous avez besoin d'un outil qui pourrait faire changer le contrôle de votre souris avec chaque application que vous utilisez. Si tel est...
Examen de la souris sans fil Microsoft Sculpt Touch
J'ai lu récemment sur le Microsoft Sculpt Touch souris sans fil et j'ai décidé de l'acheter. Après l'avoir utilisé pendant un certain temps, j'ai déci...