logo

Skapa en katalog i Python

OS-modulen i Python tillhandahåller funktioner för att interagera med operativsystemet. OS kommer under Pythons standardverktygsmoduler. Denna modul ger ett bärbart sätt att använda operativsystemberoende funktionalitet. Deos>ochos.path>moduler innehåller många funktioner för att interagera med filsystemet. Alla funktioner i os-modulen höjsOSError>i fallet med ogiltiga eller otillgängliga filnamn och sökvägar, eller andra argument som har rätt typ men som inte accepteras av operativsystemet.

Det finns olika metoder tillgängliga i OS-modulen för att skapa en regissör. Dessa är -



Använder os.mkdir()

os.mkdir()>metod i Python används för att skapa en katalog med namnet sökväg med det angivna numeriska läget. Denna metod höjaFileExistsError>om katalogen som ska skapas redan finns.

Syntax: os.mkdir(sökväg, läge = 0o777, *, dir_fd = Ingen)

Parameter:
väg: Ett sökvägsliknande objekt som representerar en filsystemsökväg. Ett banliknande objekt är antingen ett sträng- eller bytesobjekt som representerar en bana.
läge (valfritt): Ett heltalsvärde som representerar läget för katalogen som ska skapas. Om denna parameter utelämnas används standardvärdet Oo777.
dir_fd (valfritt): En filbeskrivning som refererar till en katalog. Standardvärdet för denna parameter är None.
Om den angivna sökvägen är absolut ignoreras dir_fd.



Notera: '*' i parameterlistan indikerar att alla följande parametrar (här i vårt fall 'dir_fd') är parametrar endast för nyckelord och de kan tillhandahållas med deras namn, inte som positionsparameter.

Returtyp: Denna metod returnerar inget värde.

Exempel #1: Användning avos.mkdir()>metod för att skapa katalog/fil






strängarray i c-språk
# 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)>

>

>

Produktion:

 Directory 'techcodeview.com' created Directory 'Geeks' created>

Exempel #2: Fel vid användningos.mkdir()>metod.




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

>

>

Produktion:

 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'>

Exempel #3: Hanteringsfel vid användningos.mkdir()>metod.




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

>

>

Produktion:

 [WinError 183] Cannot create a file when that file/ /already exists: 'D:/Pycharm projects/GeeksForGeeks'>

Använder os.makedirs()

os.makedirs()>metod i Python används för att skapa en katalog rekursivt. Det betyder att när du skapar bladkatalog om någon katalog på mellannivå saknas,os.makedirs()>metoden kommer att skapa dem alla.
Tänk till exempel på följande väg:

 D:/Pycharm projects/GeeksForGeeks/Authors/Nikhil>

Anta att vi vill skapa katalogen 'Nikhil' men Directory 'GeeksForGeeks' och 'Authors' är inte tillgängliga i sökvägen. Sedanos.makedirs()>metod kommer att skapa alla otillgängliga/saknade kataloger i den angivna sökvägen. 'GeeksForGeeks' och 'Authors' skapas först, sedan skapas 'Nikhil'-katalogen.

Syntax: os.makedirs(sökväg, läge = 0o777, exist_ok = Falskt)

Parameter:
väg: Ett sökvägsliknande objekt som representerar en filsystemsökväg. Ett banliknande objekt är antingen ett sträng- eller bytesobjekt som representerar en bana.
läge (valfritt): Ett heltalsvärde som representerar läget för den nyskapade katalogen. Om denna parameter utelämnas används standardvärdet Oo777.
exist_ok (valfritt): Ett standardvärde False används för denna parameter. Om målkatalogen redan finns uppstår ett OSError om dess värde är False annars inte.

Returtyp: Denna metod returnerar inget värde.

Exempel #1: Användning avos.makedirs()>metod för att skapa katalog.




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

>

>

Produktion:

 Directory 'Nikhil' created Directory 'c' created>

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

>

>

Produktion:

 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'>

Exempel #3: Hantera fel när du använder os.makedirs()-metoden.




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

>

>

Produktion:

 Directory 'Nikhil' created successfully>