Moduł OS w Pythonie zapewnia funkcje interakcji z systemem operacyjnym. System operacyjny należy do standardowych modułów narzędziowych Pythona. Moduł ten zapewnia przenośny sposób korzystania z funkcji zależnych od systemu operacyjnego. Theos>Ios.path>moduły zawierają wiele funkcji umożliwiających interakcję z systemem plików. Wszystkie funkcje w module os podnosząOSError>w przypadku nieprawidłowych lub niedostępnych nazw plików i ścieżek lub innych argumentów, które mają poprawny typ, ale nie są akceptowane przez system operacyjny.
W module systemu operacyjnego dostępne są różne metody tworzenia reżysera. To są -
Korzystanie z os.mkdir()
os.mkdir()>Metoda w Pythonie służy do tworzenia katalogu o nazwie path z określonym trybem numerycznym. Ta metoda podnosiFileExistsError>jeśli katalog, który ma zostać utworzony, już istnieje.
Składnia: os.mkdir(ścieżka, tryb = 0o777, *, dir_fd = Brak)
Parametr:
ścieżka: Obiekt podobny do ścieżki reprezentujący ścieżkę systemu plików. Obiekt podobny do ścieżki to obiekt typu string lub bytes reprezentujący ścieżkę.
tryb (opcjonalnie): Wartość całkowita reprezentująca tryb katalogu, który ma zostać utworzony. W przypadku pominięcia tego parametru zostanie użyta wartość domyślna Oo777.
katalog_fd (opcjonalnie): Deskryptor pliku odnoszący się do katalogu. Domyślna wartość tego parametru to Brak.
Jeśli określona ścieżka jest bezwzględna, katalog dir_fd jest ignorowany.
Notatka: Znak „*” na liście parametrów wskazuje, że wszystkie kolejne parametry (w naszym przypadku „dir_fd”) są parametrami zawierającymi wyłącznie słowa kluczowe i można je podać, używając ich nazwy, a nie parametru pozycyjnego.
Typ zwrotu: Ta metoda nie zwraca żadnej wartości.
Przykład 1: Zastosowanieos.mkdir()>metoda tworzenia katalogu/pliku
sortowanie listy w Javie
# Python program to explain os.mkdir() method> > # importing os module> import> os> > # Directory> directory>=> 'techcodeview.com'> > # Parent Directory path> parent_dir>=> 'D:/Pycharm projects/'> > # Path> path>=> os.path.join(parent_dir, directory)> > # Create the directory> # 'GeeksForGeeks' in> # '/home / User / Documents'> os.mkdir(path)> print>(>'Directory '% s' created'> %> directory)> > # Directory> directory>=> 'Geeks'> > # Parent Directory path> parent_dir>=> 'D:/Pycharm projects'> > # mode> mode>=> 0o666> > # Path> path>=> os.path.join(parent_dir, directory)> > # Create the directory> # 'GeeksForGeeks' in> # '/home / User / Documents'> # with mode 0o666> os.mkdir(path, mode)> print>(>'Directory '% s' created'> %> directory)> |
>
>
Wyjście:
Directory 'techcodeview.com' created Directory 'Geeks' created>
Przykład nr 2: Błędy podczas użytkowaniaos.mkdir()>metoda.
# Python program to explain os.mkdir() method> > # importing os module> import> os> > # Directory> directory>=> 'GeeksForGeeks'> > # Parent Directory path> parent_dir>=> 'D:/Pycharm projects/'> > # Path> path>=> os.path.join(parent_dir, directory)> > # Create the directory> # 'GeeksForGeeks' in> # '/home / User / Documents'> os.mkdir(path)> print>(>'Directory '% s' created'> %> directory)> > # if directory / file that> # is to be created already> # exists then 'FileExistsError'> # will be raised by os.mkdir() method> > # Similarly, if the specified path> # is invalid 'FileNotFoundError' Error> # will be raised> |
>
>
Wyjście:
Traceback (most recent call last): File 'gfg.py', line 18, in os.mkdir(path) FileExistsError: [WinError 183] Cannot create a file when that file / /already exists: 'D:/Pycharm projects/GeeksForGeeks'>
Przykład nr 3: Błąd obsługi podczas używaniaos.mkdir()>metoda.
tutorial dotyczący iskry
# Python program to explain os.mkdir() method> > # importing os module> import> os> > # path> path>=> 'D:/Pycharm projects / GeeksForGeeks'> > # Create the directory> # 'GeeksForGeeks' in> # '/home / User / Documents'> try>:> >os.mkdir(path)> except> OSError as error:> >print>(error)> |
>
>
programowanie tablicy strukturalnej c
Wyjście:
[WinError 183] Cannot create a file when that file/ /already exists: 'D:/Pycharm projects/GeeksForGeeks'>
Korzystanie z os.makedirs()
os.makedirs()>Metoda w Pythonie służy do rekurencyjnego tworzenia katalogu. Oznacza to, że podczas tworzenia katalogu liścia, jeśli brakuje jakiegoś katalogu średniopoziomowego,os.makedirs()>metoda utworzy je wszystkie.
Rozważmy na przykład następującą ścieżkę:
D:/Pycharm projects/GeeksForGeeks/Authors/Nikhil>
Załóżmy, że chcemy utworzyć katalog „Nikhil”, ale katalogi „GeeksForGeeks” i „Authors” są niedostępne na ścieżce. Następnieos.makedirs()>metoda utworzy wszystkie niedostępne/brakujące katalogi w określonej ścieżce. Najpierw zostaną utworzone „GeeksForGeeks” i „Autorzy”, a następnie zostanie utworzony katalog „Nikhil”.
Składnia: os.makedirs(ścieżka, tryb = 0o777, istnienie_ok = fałsz)
Parametr:
ścieżka: Obiekt podobny do ścieżki reprezentujący ścieżkę systemu plików. Obiekt podobny do ścieżki to obiekt typu string lub bytes reprezentujący ścieżkę.
tryb (opcjonalnie): Wartość całkowita reprezentująca tryb nowo utworzonego katalogu. Jeśli ten parametr zostanie pominięty, zostanie użyta wartość domyślna Oo777.
istnieje_ok (opcjonalnie): Dla tego parametru używana jest wartość domyślna False. Jeśli katalog docelowy już istnieje, zostanie zgłoszony OSError, jeśli jego wartość to False, w przeciwnym razie nie.Typ zwrotu: Ta metoda nie zwraca żadnej wartości.
Przykład 1: Zastosowanieos.makedirs()>metoda tworzenia katalogu.
ciąg znaków na liczbę całkowitą Java
# Python program to explain os.makedirs() method> > # importing os module> import> os> > # Leaf directory> directory>=> 'Nikhil'> > # Parent Directories> parent_dir>=> 'D:/Pycharm projects/GeeksForGeeks/Authors'> > # Path> path>=> os.path.join(parent_dir, directory)> > # Create the directory> # 'Nikhil'> os.makedirs(path)> print>(>'Directory '% s' created'> %> directory)> > # Directory 'GeeksForGeeks' and 'Authors' will> # be created too> # if it does not exists> > > > # Leaf directory> directory>=> 'c'> > # Parent Directories> parent_dir>=> 'D:/Pycharm projects/techcodeview.com/a/b'> > # mode> mode>=> 0o666> > path>=> os.path.join(parent_dir, directory)> > # Create the directory 'c'> > os.makedirs(path, mode)> print>(>'Directory '% s' created'> %> directory)> > > # 'GeeksForGeeks', 'a', and 'b'> # will also be created if> # it does not exists> > # If any of the intermediate level> # directory is missing> # os.makedirs() method will> # create them> > # os.makedirs() method can be> # used to create a directory tree> |
>
>
Wyjście:
Directory 'Nikhil' created Directory 'c' created>
Przykład nr 2:
# Python program to explain os.makedirs() method> > # importing os module> import> os> > # os.makedirs() method will raise> # an OSError if the directory> # to be created already exists> > > # Directory> directory>=> 'Nikhil'> > # Parent Directory path> parent_dir>=> 'D:/Pycharm projects/GeeksForGeeks/Authors'> > # Path> path>=> os.path.join(parent_dir, directory)> > # Create the directory> # 'Nikhil'> os.makedirs(path)> print>(>'Directory '% s' created'> %> directory)> |
>
>
Wyjście:
przekonwertuj ciąg na int
Traceback (most recent call last): File 'gfg.py', line 22, in os.makedirs(path) File 'C:UsersNikhil AggarwalAppDataLocalProgramsPython/ / Python38-32libos.py', line 221, in makedirs mkdir(name, mode) FileExistsError: [WinError 183] Cannot create a file when that/ / file already exists: 'D:/Pycharm projects/GeeksForGeeks/AuthorsNikhil'>
Przykład nr 3: Obsługa błędów podczas korzystania z metody os.makedirs().
# Python program to explain os.makedirs() method> > # importing os module> import> os> > # os.makedirs() method will raise> # an OSError if the directory> # to be created already exists> # But It can be suppressed by> # setting the value of a parameter> # exist_ok as True> > # Directory> directory>=> 'Nikhil'> > # Parent Directory path> parent_dir>=> 'D:/Pycharm projects/GeeksForGeeks/Authors'> > # Path> path>=> os.path.join(parent_dir, directory)> > # Create the directory> # 'Nikhil'> try>:> >os.makedirs(path, exist_ok>=> True>)> >print>(>'Directory '%s' created successfully'> %> directory)> except> OSError as error:> >print>(>'Directory '%s' can not be created'> %> directory)> > # By setting exist_ok as True> # error caused due already> # existing directory can be suppressed> # but other OSError may be raised> # due to other error like> # invalid path name> |
>
>
Wyjście:
Directory 'Nikhil' created successfully>