Fichier de renommée Python

Fichier de renommée Python
«Python est un excellent outil pour l'automatisation et la création d'outils simples qui vous permettent de simplifier votre vie. Il vous fournit des outils qui vous permettent d'interagir avec vos ressources système de bas niveau telles que le disque, le noyau du système d'exploitation, la mémoire, le réseautage, etc.

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'exploitation
src = "./sauvegarde.zipper"
dest = "./ backup_raw.zipper"
Renommer (SRC, dest)

Dé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'exploitation
src = "/ home / unix / backups / backups.zipper"
dest = "/ home / Unix / Backups / Backups_raw.zipper"
Renommer (SRC, dest)

Dans 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'exploitation
src = "C: \\ Users \\ Unix \\ Backups \\ Backups.zipper"
dest = "C: \\ Users \\ Unix \\ BACKUPS \\ BACKUPS_RAW.zipper"
Renommer (SRC, dest)

Dans 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:

  1. Le fichier cible n'existe pas.
  2. Un fichier avec un nom similaire que la destination existe déjà.
  3. Autorisation insuffisante sur le fichier cible et le répertoire.

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'exploitation
src = "./ old_file.SMS"
dest = "./nouveau fichier.SMS"
essayer:
Renommer (SRC, dest)
sauf filenotfounderror comme e:
Imprimer (e)

Dans 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'exploitation
src = "./ old_file.SMS"
dest = "./nouveau fichier.SMS"
essayer:
Renommer (SRC, dest)
Sauf FileExisterSerror comme e:
Imprimer (e)

Et 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'exploitation
src = "./ old_file.SMS"
dest = "./nouveau fichier.SMS"
essayer:
Renommer (SRC, dest)
Sauf la permission de permission comme e:
Imprimer (e)

Exemple 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_velocity
Total 24
drwxr-xr-x @ 5 Personnel de Salem 160 5 juin 01:37 .
DRWX ------ + 9 Personnel de Salem 288 5 juin 01:41.
-RW-R - R-- 1 Personnel de Salem 81 5 juin 01:39 Maître.machine virtuelle
-RW-R - R-- 1 Personnel Salem 81 5 juin 01:39 Racine.machine virtuelle
-RW-R - R-- 1 Personnel Salem 81 5 juin 01:39 Slave.machine virtuelle
Voyons comment nous pouvons renommer ces fichiers à autre chose.
à partir de la renommée d'importation du système d'exploitation, ListDir
De OS.Path Import Rejoin
# Set Target Dir
Target_dir = "/ Users / Username / Desktop / apache_velocity"
#iter les fichiers
pour le fichier dans ListDir (Target_Dir):
src = join (cible_dir, fichier)
Renomme (Src, f "src.bak ")
Imprimer ("Recursif Rename réussi")
print (listDir (target_dir))

Le 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.

  1. Rename (), qui nous permet de renommer les fichiers
  2. listDir (), qui nous permet de répertorier les fichiers dans un répertoire donné.

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!!