w Pythonie istnieje wiele przydatnych modułów. Moduły os i shutil to dwa z tych użytecznych modułów. Dzisiaj poznamy różnicę między systemem operacyjnym.Zmień nazwę i szutil.poruszaj się w Pythonie.
os.zmiana nazwy vs shutil.Przenieś w Pythonie
Jeśli chcesz wiedzieć między tymi dwoma modułami os i shutil, który moduł jest lepszy, to zadajesz złe pytanie. Zasadniczo oba mogą być używane w programie Python. Ale musisz określić, co powinno być używane w jakim celu.
w jednym zdaniu możemy powiedzieć, że shutil składa się z funkcji specyficznych dla Pythona wysokiego poziomu. shutil jest na szczycie modułu OS Pythona. W ten sposób możemy użyć modułu shutil do wysokopoziomowych operacji na plikach.
oto przykład dla obu modułów,
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
używając powyższego kodu możemy przenieść plik z jednego katalogu do drugiego. Wykorzystaliśmy oba moduły. (nie próbuj używać obu modułów w tym samym czasie, to tylko po to, aby pokazać oba moduły )
kilka podstawowych różnic między systemem operacyjnym.Zmień nazwę i szutil.move
- moduł systemu operacyjnego może nie przenieść pliku, jeśli ścieżka źródłowa i docelowa znajduje się na innym systemie plików lub dysku.
ale szutil.move nie zawiedzie w tego rodzaju przypadkach. - szutil.move sprawdza, czy ścieżka źródłowa i docelowa znajdują się w tym samym systemie plików. Ale os.zmiana nazwy nie jest sprawdzana, Więc czasami się nie udaje.
- po sprawdzeniu ścieżki źródłowej i docelowej, jeśli okaże się, że nie są one w tym samym systemie plików, shutil.move skopiuje plik jako pierwszy do miejsca docelowego. Następnie usunie plik z pliku źródłowego. Tak możemy powiedzieć shutil.move to mądrzejsza metoda przenoszenia pliku w Pythonie, gdy ścieżka źródłowa i docelowa nie znajdują się na tym samym dysku lub systemie plików.
- szutil.move działa na funkcjach wysokiego poziomu, podczas gdy system operacyjny.zmiana nazwy działa na funkcjach niższego poziomu.
Jeśli jesteś zainteresowany przeniesieniem pliku z jednego katalogu do drugiego, możesz przeczytać ten samouczek Pythona,
- Jak przenieść plik z jednego katalogu do drugiego w Pythonie
-
shawon mówi:
w punkcie 3 , „po sprawdzeniu ścieżki źródłowej i docelowej, jeśli okaże się, że nie są one w tym samym systemie plików, shutil.move skopiuje plik jako pierwszy do miejsca docelowego. Następnie usunie plik z pliku docelowego. Tak możemy powiedzieć shutil.move to mądrzejsza metoda przenoszenia pliku w Pythonie, gdy ścieżka źródłowa i docelowa nie znajdują się na tym samym dysku lub systemie plików.”
Czy nie powinno być „plik źródłowy” zamiast „plik docelowy” ?-
Saruque Ahamed Mollick says:
Yeah Thanks! Zaktualizowałem go.
-