Metoda os.chdir() w Pythonie
Moduł systemu operacyjnego w Pythonie udostępnia funkcje umożliwiające interakcję z systemem operacyjnym. OS należy do standardowych modułów narzędziowych Pythona. Moduł ten zapewnia przenośny sposób korzystania z funkcji zależnych od systemu operacyjnego.
os.chdir() metoda w Pythonie używana do zmiany bieżącego katalogu roboczego na określoną ścieżkę. Jako nową ścieżkę katalogu przyjmuje tylko jeden argument.
Składnia: os.chdir(ścieżka)
Parametry:
ścieżka: Pełna ścieżka katalogu, który ma zostać zmieniony na nową ścieżkę katalogu.
Zwroty: Nie zwraca żadnej wartości
Kod nr 1: Użyj chdir(), aby zmienić katalog
Python3
# Python3 program to change the> # directory of file using os.chdir() method> # import os library> import> os> # change the current directory> # to specified directory> os.chdir(r> 'C:UsersGfgDesktopgeeks'> )> print> (> 'Directory changed'> )> |
Wyjście:
Directory changed
Kod nr 2: Użycie os.getcwd()
Aby poznać bieżący katalog roboczy pliku, można zastosować metodę getcwd(). Po zmianie ścieżki można tą metodą zweryfikować ścieżkę bieżącego katalogu roboczego.
Python3
# import os module> import> os> # change the current working directory> # to specified path> os.chdir(> 'c:gfg_dir'> )> # verify the path using getcwd()> cwd> => os.getcwd()> # print the current directory> print> (> 'Current working directory is:'> , cwd)> |
Wyjście:
Current working directory is: c:gfg_dir
Kod nr 3: Obsługa błędów podczas zmiany katalogu
Python3
# importing all necessary libraries> import> sys, os> # initial directory> cwd> => os.getcwd()> # some non existing directory> fd> => 'false_dir / temp'> # trying to insert to false directory> try> :> > os.chdir(fd)> > print> (> 'Inserting inside-'> , os.getcwd())> > # Caching the exception> except> :> > print> ('Something wrong with specified> > directory. Exception> -> ', sys.exc_info())> > # handling with finally> finally> :> > print> (> 'Restoring the path'> )> > os.chdir(cwd)> > print> (> 'Current directory is-'> , os.getcwd())> |
Wyjście:
Inserting inside- c:gfg_dirgfg Something wrong with specified directory. Exception- Restoring the path Current directory is- c:gfg_dirgfg