fichier de copie Python

Vous devrez peut-être copier un fichier dans un certain nombre de programmes. Imaginez si vous vouliez créer une fonction de journalisation pour votre programme qui commence par un ensemble de texte prédéfini. Vous pouvez créer une copie d’un fichier journal vierge existant pour chaque journal que vous souhaitez créer.

La bibliothèque Python Shutil est livrée avec un certain nombre de fonctions pour copier des fichiers. Dans ce guide, nous expliquons comment utiliser les méthodes shutil.copy() et shutil.copy2() pour copier un fichier à l’aide du langage de programmation Python. Commençons.

Python Copy File

La bibliothèque Python Shutil, qui vous permet de manipuler des fichiers et des répertoires, contient des méthodes pour copier des fichiers. Les méthodes copy() et copy2() sont couramment utilisées car elles permettent de copier les permissions associées à un fichier existant.

Les la différence entre copy() et copy2() est que le premier ne copie pas les métadonnées associées aux fichiers (les informations sur un fichier, comme qui a créé le fichier) alors que ce dernier copie ces informations.

Parlons de l’utilisation de chacune de ces deux méthodes.

Python Shutil.copy()

Créons un programme qui génère des bulletins scolaires pour chaque élève d’une école. Pour commencer, nous voulons créer des fichiers pour chaque élève de notre classe. Les fichiers doivent commencer par :

Ces informations se trouvent déjà dans un fichier nommé template.txt. Nous voulons copier ce modèle pour créer un fichier pour chaque élève de notre école. Pour commencer, importons la bibliothèque Shutil que nous utiliserons pour copier nos fichiers puis définissons une liste d’étudiants :

Nous allons parcourir cette liste et créer une transcription vierge pour chaque étudiant :

81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi en technologie après avoir assisté à un bootcamp. Soyez jumelé à un bootcamp aujourd’hui.

Le diplômé moyen d’un bootcamp a passé moins de six mois en transition de carrière, du démarrage d’un bootcamp à la recherche de son premier emploi.

Cette boucle passe par chaque étudiant dans notre liste. Nous copions le fichier template.txt et collons ce fichier dans le répertoire /home/james/students/data/ pour chaque étudiant. Le fichier de chaque élève porte le nom :

La valeur [Student name] représente le nom d’un étudiant.

Exécutons notre programme et voyons ce qui se passe :

Notre code affiche trois messages qui indiquent que le bulletin de chaque élève a été créé.

Si nous regardons le dossier /home/james/students/data/, nous peut voir trois fichiers :

Chaque fichier contient le texte de notre modèle précédent.

Méthode Python Shutil.copy2()

La < La méthode code>shutil.copy2() copie un fichier d’un endroit à un autre sur votre système d’exploitation. Cette méthode, contrairement à shutil.copy(), copie également les métadonnées associées à un fichier. shutil.copy2() utilise la même syntaxe que la méthode shutil.copy().

Supposons que nous voulions créer un certificat de progression pour quelqu’un qui joue à un jeu. Ce certificat doit commencer par le texte suivant :

Ce texte est déjà dans le fichier default_scorecard.txt. Nous pourrions copier le fichier default_scorecard.txt en utilisant la méthode copy2() dans la bibliothèque Shutil :

Nous importons la bibliothèque Shutil puis nous utilisons la méthode shutil.copy2() pour créer une copie du fichier default_scorecard.txt . Nous imprimons ensuite un message à la console nous informant que le fichier original a été copié dans le fichier recent_scores.txt.

Autres méthodes

Vous pouvez également utiliser le copyfile( ) et copyfileobj() dans la bibliothèque Shutil.

Ces deux méthodes utilisent la même syntaxe que les deux méthodes dont nous avons parlé plus tôt :

La méthode copyfile() permet de copier un fichier d’un emplacement à un autre. Vous pouvez également demander à Python de créer un lien symbolique entre le nouveau et l’ancien fichier. La méthode copyfileobj() vous permet de copier un fichier et de spécifier comment les données sont lues en morceaux.

Vous pouvez en savoir plus sur ces méthodes en lisant le Documentation Python Shutil.

Conclusion

Le Python shutil.copy() et shutil.copy2() vous permettent de copier un fichier vers un autre emplacement. Ces méthodes copient les autorisations attachées à un fichier existant. Vous pouvez également utiliser les méthodes copyfile() et copyfileobj() dans la bibliothèque Shutil pour copier un fichier.

Voulez-vous en savoir plus sur le codage en Python ? Lisez notre Comment faire Guide d’apprentissage Python. Ce guide contient une série de conseils pour vous aider à apprendre le codage Python. Vous trouverez également des ressources d’apprentissage pour guider votre apprentissage.