logo

Python | metoda os.mkdir().

Vse funkcije v modulu OS dvignejo OSError v primeru neveljavnih ali nedostopnih imen in poti datotek ali drugih argumentov, ki imajo pravilen tip, vendar jih operacijski sistem ne sprejema.

os.mkdir()> metoda v Python se uporablja za ustvarjanje imenika v Pythonu ali ustvarjanje imenika z imenom Python pot z navedenim številskim načinom. Ta metoda dvigne FileExistsError če imenik, ki ga želite ustvariti, že obstaja.



os.mkdir() Sintaksa v Pythonu

Sintaksa: os.mkdir(pot, način = 0o777, *, dir_fd = Brez)

Parameter :

  • pot : predmet, podoben poti, ki predstavlja pot do datotečnega sistema. Objekt, podoben poti, je objekt niza ali bajtov, ki predstavlja pot.
  • način (neobvezno) : celoštevilska vrednost, ki predstavlja način imenika, ki ga želite ustvariti. Če je ta parameter izpuščen, se uporabi privzeta vrednost Oo777.
  • dir_fd (neobvezno) : deskriptor datoteke, ki se nanaša na imenik. Privzeta vrednost tega parametra je Brez. Če je podana pot absolutna, je dir_fd prezrt.
  • Opomba: »*« na seznamu parametrov pomeni, da so vsi naslednji parametri (v našem primeru »dir_fd«) parametri samo s ključnimi besedami in jih je mogoče navesti z uporabo njihovega imena, ne kot pozicijski parameter.

Vrsta vračila: Ta metoda ne vrne nobene vrednosti.



metoda os.mkdir() Primeri

Obstajajo različni načini uporabe os.mkdir() za ustvarjanje imenika v Pythonu ali ustvarjanje imenika s Pythonom z uporabo os.mkdir. Tukaj razpravljamo o nekaterih splošnih primerih ustvarjanja imenika v Pythonu ali ustvarjanja imenika s Pythonom, ki so naslednji .

Ustvari imenik v Pythonu

V tem primeru koda uporabljaos.mkdir()>do Python ustvarite mapo z dvema imenikoma: GeeksForGeeks in ihritik v imeniku /home/User/Documents. Prvi imenik je ustvarjen s privzetimi dovoljenji, drugi pa z določenimi dovoljenji (način 0o666).

Python3



python bajtov v niz




#Python create folder> # importing os module> import> os> > # Directory> directory>=> 'GeeksForGeeks'> > # Parent Directory path> parent_dir>=> '/home/User/Documents'> > # 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>=> 'ihritik'> > # Parent Directory path> parent_dir>=> '/home/User/Documents'> > # 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)>

>

>

java pretvori char v int
Izhod

Directory 'GeeksForGeeks' created Directory 'ihritik' created>

Napake med uporabo metode os.mkdir().

V tem primeru skript Python uporablja `os.mkdir()` za ustvarjanje imenika z imenom GeeksForGeeks na poti /home/User/Documents. Če imenik že obstaja, se prikaže `FileExistsError`. Če podana pot ni veljavna, se sproži napaka `FileNotFoundError`.

Python3




#Python create folder> # importing os module> import> os> > # Directory> directory>=> 'GeeksForGeeks'> > # Parent Directory path> parent_dir>=> '/home/User/Documents'> > # Path> path>=> os.path.join(parent_dir, directory)> > # Create the directory> # 'GeeksForGeeks' in> # '/home / User / Documents'> os.mkdir(path)> print>(>'Directory '%s' created'> %>directory)>

>

>

Izhod

Traceback (most recent call last): File 'osmkdir.py', line 17, in os.mkdir(path) FileExistsError: [Errno 17] File exists: '/home/User/Documents/GeeksForGeeks'>

Napaka pri ravnanju med uporabo metode os.mkdir().

V tem primeru skript Python poskuša ustvariti imenik z imenom GeeksForGeeks na poti /home/User/Documents z uporabo `os.mkdir(). Če imenik že obstaja, se ujame `OSError` in sporočilo o napaki se natisne.

Python3




# importing os module> import> os> # path> path>=> '/home/User/Documents/GeeksForGeeks'> # Create the directory> # 'GeeksForGeeks' in> # '/home/User/Documents'> try>:> >os.mkdir(path)> except> OSError as error:> >print>(error)>

>

>

Izhod

[Errno 17] File exists: '/home/User/Documents/GeeksForGeeks'>

pogosta vprašanja

Kakšna je razlika med os.mkdir() in os.makedirs()?

os.mkdir()>se uporablja za ustvarjanje enega samega imenika in sproži napako, če nadrejeni imenik ne obstaja.

os.makedirs()>po potrebi ustvari nadrejene imenike, kar omogoča ustvarjanje ugnezdenih imenikov, in ne prikaže napake, če imeniki že obstajajo.

Kdaj naj uporabim pathlib.Path.mkdir() v primerjavi z os.mkdir() ali os.makedirs()?

Pri delu s potmi in imeniki uporabite `pathlib.Path.mkdir()`, saj zagotavlja sodobnejši in objektno usmerjen pristop k operacijam datotečnega sistema.

popolna tabela resnic seštevalnika

`os.mkdir()` in `os.makedirs()` sta primerna za osnovno ustvarjanje imenikov, vendar je `pathlib` prednost za naprednejšo manipulacijo poti in upravljanje imenikov.