logo

Python | metoda os.mkdir().

Všechny funkce v modulu OS se zvyšují OSError v případě neplatných nebo nepřístupných názvů souborů a cest nebo jiných argumentů, které mají správný typ, ale nejsou akceptovány operačním systémem.

os.mkdir()> metoda v Krajta se používá k vytvoření adresáře v Pythonu nebo k vytvoření adresáře s Python pojmenovanou cestou se zadaným číselným režimem. Tato metoda zvyšuje FileExistsError pokud adresář, který má být vytvořen, již existuje.



os.mkdir() Syntaxe v Pythonu

Syntax: os.mkdir(cesta, režim = 0o777, *, dir_fd = Žádný)

Parametr :

  • cesta : Objekt podobný cestě představující cestu systému souborů. Objekt podobný cestě je buď řetězec nebo objekt typu bytes představující cestu.
  • režimu (nepovinné) : Celočíselná hodnota představující režim adresáře, který má být vytvořen. Pokud je tento parametr vynechán, použije se výchozí hodnota Oo777.
  • dir_fd (nepovinné) : Deskriptor souboru odkazující na adresář. Výchozí hodnota tohoto parametru je Žádná. Pokud je zadaná cesta absolutní, pak je dir_fd ignorován.
  • Poznámka: ‚*‘ v seznamu parametrů znamená, že všechny následující parametry (zde v našem případě ‚dir_fd‘) jsou parametry pouze pro klíčová slova a lze je zadat pomocí jejich názvu, nikoli jako poziční parametr.

Typ vrácení: Tato metoda nevrací žádnou hodnotu.



Metoda os.mkdir() Příklady

Existují různé způsoby použití os.mkdir() k vytvoření adresáře v Pythonu nebo vytvoření adresáře pomocí Pythonu pomocí os.mkdir. Zde diskutujeme o některých obecných příkladech vytvoření adresáře v Pythonu nebo vytvoření adresáře v Pythonu, které následují .

Vytvořte adresář v Pythonu

V tomto příkladu kód používáos.mkdir()>na Krajta vytvořte složku dva adresáře: GeeksForGeeks a ihritik v adresáři /home/User/Documents. První adresář je vytvořen s výchozími oprávněními, zatímco druhý je vytvořen se zadanými oprávněními (režim 0o666).

Python3




výchozí parametry java



#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)>

>

>

Výstup

Directory 'GeeksForGeeks' created Directory 'ihritik' created>

Chyby při použití metody os.mkdir().

V tomto příkladu skript Pythonu používá `os.mkdir()` k vytvoření adresáře s názvem GeeksForGeeks v cestě /home/User/Documents. Pokud adresář již existuje, vyvolá se `FileExistsError`. Pokud je zadaná cesta neplatná, zobrazí se `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)>

>

>

Výstup

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

Chyba zpracování při použití metody os.mkdir().

V tomto příkladu se skript Pythonu pokouší vytvořit adresář s názvem GeeksForGeeks v cestě /home/User/Documents pomocí `os.mkdir(). Pokud adresář již existuje, zachytí se `OSError` a vytiskne se chybová zpráva.

Python3


java webové služby



# 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)>

>

>

Výstup

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

Nejčastější dotazy

Jaký je rozdíl mezi os.mkdir() a os.makedirs()?

os.mkdir()>se používá k vytvoření jednoho adresáře a vyvolá chybu, pokud nadřazený adresář neexistuje.

os.makedirs()>vytváří nadřazené adresáře podle potřeby, což umožňuje vytváření vnořených adresářů, a nevyvolá chybu, pokud adresáře již existují.

Kdy bych měl použít pathlib.Path.mkdir() vs os.mkdir() nebo os.makedirs()?

Při práci s cestami a adresáři používejte `pathlib.Path.mkdir()`, protože poskytuje modernější a objektově orientovaný přístup k operacím souborového systému.

`os.mkdir()` a `os.makedirs()` jsou vhodné pro základní vytváření adresářů, ale `pathlib` je preferován pro pokročilejší manipulaci s cestami a správu adresářů.