L'un des scénarios que vous rencontrerez souvent en tant que développeur Python est la gestion des fichiers. Il s'agit donc d'avoir quelques compétences qui concernent la gestion des fichiers à votre actif.
Pour ce tutoriel, nous vous donnerons une de ces compétences. Vous apprendrez à renommer des fichiers célibataires ou multiples à l'aide de Python."
Avec cela à l'écart, commençons.
Fichier de renommée Python - Module OS
L'un des modules les plus utiles de l'écosystème Python est le module OS. Il vous fournit beaucoup d'outils et de fonctionnalités pour interagir avec le système d'exploitation.
Le module OS est très étendu, et nous ne pouvons donc pas l'explorer du début à la fin. Cependant, concentrons-nous sur la seule fonction qui nous permet de renommer des fichiers sur le système.
La fonction Rename () dans le module OS de Python vous permet de renommer un fichier existant sur votre système.
La syntaxe est comme indiqué ci-dessous:
OS.Renommer (fichier, destination)Il prend le chemin du fichier cible et le chemin du nouveau nom de fichier comme paramètres. Étant donné que vous renomnez un fichier, vous devez vous assurer que les paramètres de fichier et de destination contiennent des valeurs différentes.
Remarque: Bien que le module OS fasse partie de la bibliothèque standard de Python, vous devrez l'importer avant utilisation.
Suivez les exemples fournis ci-dessous pour découvrir comment nous pouvons renommer un fichier à l'aide de la fonction Rename ().
Exemple 1 - Renommer un fichier
Supposons que nous ayons un fichier appelé «Sauvegarde.Tar ", et nous voulons le renommer pour" Backup_raw.le goudron."Pour plus de simplicité, supposons que le fichier que nous souhaitons renommer est situé dans le même répertoire que notre script Python.
À l'aide d'un code Python simple (source ci-dessous), nous pouvons renommer le fichier. La capture d'écran ci-dessous affiche le répertoire actuel avant de renommer le fichier.
Nous pouvons ensuite exécuter le code ci-dessous:
à partir de la renommée d'importation du système d'exploitationDécomposons le code.
Nous commençons par importer la fonction de renom sur le module OS. Il n'est pas nécessaire d'importer tout le code du module OS lorsque nous n'en avons pas besoin.
Nous créons ensuite deux variables. Celui qui maintient le chemin du fichier que nous souhaitons renommer. L'autre tient le chemin du nouveau nom de fichier.
Enfin, nous appelons la fonction Rename () et passons les paramètres source et de destination. L'exécution du code doit renommer le fichier cible, comme indiqué dans la capture d'écran résultante.
Et là, nous l'avons, nous avons réussi à rebaptiser le fichier de la sauvegarde.zip à backup_raw.zipper.
Exemple 2 - Chemins de fichiers Windows
Prenons un autre exemple où le fichier cible est situé dans un autre répertoire. Gardez à l'esprit que la structure du chemin changera en fonction de votre système d'exploitation cible.
Par exemple, disons que nous souhaitons renommer le fichier appelé «Backups.zip "qui se trouve dans le répertoire" Backups "de l'utilisateur" Unix "à" Backups_raw.zipper."
Sur les systèmes Unix, nous pouvons utiliser le code ci-dessous pour renommer le fichier comme:
à partir de la renommée d'importation du système d'exploitationDans ce cas, nous fournissons le chemin absolu vers l'ancien et le fichier renommé.
Pour Windows, System, nous pouvons modifier le chemin pour ressembler au code ci-dessous:
à partir de la renommée d'importation du système d'exploitationDans l'exemple ci-dessus, nous utilisons un caractère double arrière pour échapper au caractère simple de barreaux arrière utilisés dans les chemins de fichier Windows.
Gardez à l'esprit que Python peut ne pas beaucoup aimer ce chemin. Consultez la fonction join () de Python du module OS pour savoir comment vous pouvez surmonter cela.
Exemple 3 - Gestion des erreurs
Bien que la fonction Rename () vous permette de renommer n'importe quel fichier à partir de n'importe quel emplacement de votre système de fichiers, il peut entraîner des erreurs si, par exemple:
Il est donc une bonne pratique pour mettre en œuvre un mécanisme de gestion des erreurs. Pour plus de simplicité, nous essaierons de rester avec le bloc d'essai / sauf.
Considérez l'exemple de code ci-dessous:
à partir de la renommée d'importation du système d'exploitationDans le code ci-dessus, nous utilisons un bloc d'essai / sauf pour gérer l'erreur FileNotFound.
Un autre exemple est si le fichier cible existe déjà. Un exemple de code est comme indiqué:
à partir de la renommée d'importation du système d'exploitationEt si nous n'avons pas la permission de modifier le fichier? Pour cela, nous pouvons remercier l'autorisation de permission. Vérifiez le code simple illustré ci-dessous:
à partir de la renommée d'importation du système d'exploitationExemple 4 - Renommer plusieurs fichiers
Dans certains cas, nous pouvons avoir un répertoire avec une liste de fichiers que nous souhaitons renommer à autre chose.
Comment allions-nous y aller?
La première étape serait d'obtenir la liste de tous les fichiers du répertoire cible et de les stocker dans une itérable.
Heureusement, la fonction ListDir du module OS nous permet de faire exactement cela.
Nous pouvons ensuite itérer sur chaque élément de l'objet itérable à l'aide d'une boucle pour une boucle et lui attribuer un nouveau nom.
De même, nous essaierons de nous en tenir à un exemple simple.
Dans notre exemple, nous avons un dossier appelé apache_velocity contenant, vous l'avez deviné, modèles de vitesse Apache.
La structure du répertoire est comme indiqué:
ls -la apache_velocityLe code ci-dessus est relativement simple et peut être considérablement amélioré. Mais pour éviter les sur-complications, respectons-le avec.
Nous commençons par importer la fonction dont nous avons besoin.
Nous importons également la fonction join () à partir du système d'exploitation.module de chemin. Cette fonction nous permet de construire des chemins de fichier compatibles compatibles complets et multiplateformes.
Ensuite, nous créons une variable qui maintient le chemin d'accès au répertoire cible. je.e., le répertoire dont nous souhaitons renommer les fichiers.
Ensuite, nous créons une boucle qui itère sur chaque fichier du répertoire cible à l'aide du listDir. À l'intérieur de la boucle, nous obtenons le chemin source en utilisant la fonction de jointure.
Et enfin, nous renomnons les fichiers en ajoutant un .Extension BAK à chaque fichier.
Si nous exécutons le code ci-dessus, nous devrions voir une sortie comme indiqué
Nous pouvons voir que les fichiers ont été renommés Old_filename.bak.
Conclusion
Dans ce tutoriel, nous avons exploré comment nous pouvons renommer les fichiers à l'aide de Python. Nous avons compris comment travailler avec la fonction Rename nous permettant de renommer un fichier unique ou multiple.
Merci d'avoir lu et codage heureux!!