En Python, il existe de nombreux modules utiles. les modules os et shutil sont deux de ces modules utiles. Aujourd’hui, nous allons apprendre la différence entre les systèmes d’exploitation.renommer et shutil.déplacez-vous en Python.
système d’exploitation.renommer vs shutil.déplacez-vous en Python
Si vous voulez savoir parmi ces deux modules os et shutil, quel module est le meilleur, alors vous posez une mauvaise question. Fondamentalement, les deux peuvent être utilisés dans le programme Python. Mais vous devez déterminer ce qui doit être utilisé dans quel but.
En une seule phrase, on peut dire que shutil est composé de fonctions spécifiques à Python de haut niveau. shutil est au-dessus du module os de Python. Ainsi, nous pouvons utiliser le module shutil pour des opérations de haut niveau sur des fichiers.
Voici un exemple pour les deux modules,
import shutilimport osshutil.move("M://source/folder/file.txt", "M://destination/folder/file.txt") # using shutil.moveos.rename("M://source/folder/file.txt", "M://destination/folder/file.txt") # using os.rename
En utilisant le code ci-dessus, nous pouvons déplacer un fichier d’un répertoire à un autre. Nous avons utilisé les deux modules. (n’essayez pas d’utiliser les deux modules en même temps, c’est juste pour vous montrer les deux modules)
Quelques différences de base entre les systèmes d’exploitation.renommer et shutil.le module move
- OS peut ne pas déplacer un fichier si le chemin source et le chemin de destination se trouvent sur des systèmes de fichiers ou des lecteurs différents.
Mais shutil.move n’échouera pas dans ce genre de cas. - shutil.déplacer vérifie si le chemin source et le chemin de destination se trouvent sur le même système de fichiers ou non. Mais os.renommer ne vérifie pas, donc il échoue parfois.
- Après avoir vérifié le chemin source et le chemin de destination, s’il s’avère qu’ils ne sont pas dans le même système de fichiers, shutil.move copiera d’abord le fichier vers la destination. Ensuite, il supprimera le fichier du fichier source. Ainsi, nous pouvons dire shutil.déplacer est une méthode plus intelligente pour déplacer un fichier en Python lorsque le chemin source et le chemin de destination ne sont pas sur le même lecteur ou système de fichiers.
- shutil.move fonctionne sur des fonctions de haut niveau, tandis que le système d’exploitation.renommer fonctionne sur les fonctions de niveau inférieur.
Si vous souhaitez déplacer un fichier d’un répertoire à un autre, vous pouvez lire ce tutoriel Python,
- Comment déplacer un fichier d’un répertoire à un autre en Python
-
shawon dit:
Au point 3, « Après avoir vérifié le chemin source et le chemin de destination, s’il s’avère qu’ils ne sont pas dans le même système de fichiers, shutil.move copiera d’abord le fichier vers la destination. Ensuite, il supprimera le fichier du fichier DE DESTINATION. Ainsi, nous pouvons dire shutil.déplacer est une méthode plus intelligente pour déplacer un fichier en Python lorsque le chemin source et le chemin de destination ne sont pas sur le même lecteur ou système de fichiers. »
Ne devrait-il pas être « fichier source” au lieu de « fichier de destination”?-
Saruque Ahamed Mollick dit:
Ouais Merci! Je l’ai mis à jour.
-