Unterschied zwischen os.umbenennen und shutil.move in Python

In Python gibt es viele nützliche Module. os- und Shutil-Module sind zwei dieser nützlichen Module. Heute werden wir den Unterschied zwischen os lernen.umbenennen und shutil.bewegen Sie sich in Python.

Betriebssystem.umbenennen vs shutil.move in Python

Wenn Sie unter diesen beiden Modulen os und shutil wissen wollen, welches Modul besser ist, dann stellen Sie eine falsche Frage. Grundsätzlich können beide im Python-Programm verwendet werden. Aber Sie müssen bestimmen, was für welchen Zweck verwendet werden soll.

In einem einzigen Satz können wir sagen, dass shutil aus Python-spezifischen Funktionen auf hoher Ebene besteht. shutil ist auf Pythons OS-Modul. Somit können wir das Shutil-Modul für Operationen auf hoher Ebene für Dateien verwenden.

Hier ist ein Beispiel für beide Module,

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

Mit dem obigen Code können wir eine Datei von einem Verzeichnis in ein anderes verschieben. Wir haben beide Module verwendet. (versuchen Sie nicht, beide Module gleichzeitig zu verwenden, dies soll Ihnen nur beide Module zeigen)

Einige grundlegende Unterschiede zwischen den Betriebssystemen.umbenennen und shutil.move

  1. Das OS-Modul kann eine Datei möglicherweise nicht verschieben, wenn sich Quell- und Zielpfad auf unterschiedlichen Dateisystemen oder Laufwerken befinden.
    Aber shutil.move wird in solchen Fällen nicht fehlschlagen.
  2. shutil.move prüft, ob sich Quell- und Zielpfad im selben Dateisystem befinden oder nicht. Aber os.umbenennen wird nicht überprüft, daher schlägt es manchmal fehl.
  3. Wenn nach dem Überprüfen des Quell- und Zielpfads festgestellt wird, dass sie sich nicht im selben Dateisystem befinden, shutil.verschieben kopiert die Datei zuerst an das Ziel. Dann wird die Datei aus der Quelldatei gelöscht. So können wir shutil sagen.move ist eine intelligentere Methode zum Verschieben einer Datei in Python, wenn sich Quell- und Zielpfad nicht auf demselben Laufwerk oder Dateisystem befinden.
  4. shutil.move arbeitet auf High-Level-Funktionen, während os.umbenennen funktioniert auf untergeordneten Funktionen.

Wenn Sie daran interessiert sind, eine Datei von einem Verzeichnis in ein anderes zu verschieben, können Sie dieses Python-Tutorial lesen,

  • So verschieben Sie eine Datei in Python von einem Verzeichnis in ein anderes
  1. shawon sagt:

    In Punkt 3 , „Nach der Überprüfung der Quell- und Zielpfad, wenn festgestellt wird, dass sie nicht im selben Dateisystem sind, shutil.verschieben kopiert die Datei zuerst an das Ziel. Dann wird die Datei aus der Zieldatei gelöscht. So können wir shutil sagen.move ist eine intelligentere Methode zum Verschieben einer Datei in Python, wenn sich Quell- und Zielpfad nicht auf demselben Laufwerk oder Dateisystem befinden.“
    Sollte es nicht „Quelldatei “ statt „Zieldatei“sein?

    • Saruque Ahamed Mollick sagt:

      Ja Danke! Ich habe es aktualisiert.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.