logo

Python | os.mkdir() metode

Visas OS moduļa funkcijas tiek paaugstinātas OSERror ja ir nederīgi vai nepieejami failu nosaukumi un ceļi, vai citi argumenti, kuriem ir pareizais tips, bet operētājsistēma tos nepieņem.

os.mkdir()> metode iekšā Python tiek izmantots, lai izveidotu direktoriju Python vai izveidotu direktoriju ar Python nosaukumu ceļš ar norādīto ciparu režīmu. Šī metode paaugstina FileExistsError ja izveidojamais direktorijs jau pastāv.



os.mkdir() Sintakse Python

Sintakse: os.mkdir(ceļš, režīms = 0o777, *, dir_fd = nav)

Parametrs :

  • ceļš : ceļam līdzīgs objekts, kas attēlo failu sistēmas ceļu. Ceļam līdzīgs objekts ir virknes vai baitu objekts, kas attēlo ceļu.
  • režīmā (neobligāti) : vesela skaitļa vērtība, kas apzīmē izveidojamā direktorija režīmu. Ja šis parametrs tiek izlaists, tiek izmantota noklusējuma vērtība Oo777.
  • dir_fd (neobligāti) : faila deskriptors, kas attiecas uz direktoriju. Šī parametra noklusējuma vērtība ir None. Ja norādītais ceļš ir absolūts, dir_fd tiek ignorēts.
  • Piezīme: “*” parametru sarakstā norāda, ka visi turpmākie parametri (šeit mūsu gadījumā “dir_fd”) ir tikai atslēgvārdu parametri, un tos var nodrošināt, izmantojot to nosaukumu, nevis kā pozicionālo parametru.

Atgriešanas veids: Šī metode neatgriež nekādu vērtību.



os.mkdir() metode Piemēri

Ir dažādi os.mkdir() izmantošanas veidi, lai izveidotu direktoriju programmā Python vai izveidotu direktoriju ar Python, izmantojot os.mkdir. Šeit mēs apspriežam dažus vispārīgus piemērus direktorija izveidei programmā Python vai direktorija izveidei ar Python. .

Izveidojiet direktoriju programmā Python

Šajā piemērā kods izmantoos.mkdir()>uz Python Izveidojiet mapi divus direktorijus: GeeksForGeeks un ihritik direktorijā /home/User/Documents. Pirmais direktorijs tiek izveidots ar noklusējuma atļaujām, bet otrais tiek izveidots ar noteiktām atļaujām (režīms 0o666).

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

virkne java

>

>

Izvade

Directory 'GeeksForGeeks' created Directory 'ihritik' created>

Kļūdas, izmantojot os.mkdir() metodi

Šajā piemērā Python skripts izmanto “os.mkdir()”, lai izveidotu direktoriju ar nosaukumu GeeksForGeeks ceļā /home/User/Documents. Ja direktorijs jau pastāv, tiks parādīts ziņojums 'FileExistsError'. Ja norādītais ceļš nav derīgs, tiks parādīts ziņojums 'FileNotFoundError'.

Python3


saraksta piemērs 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)>

>

>

Izvade

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

Apstrādes kļūda, izmantojot os.mkdir() metodi

Šajā piemērā Python skripts mēģina izveidot direktoriju ar nosaukumu GeeksForGeeks ceļā /home/User/Documents, izmantojot `os.mkdir(). Ja direktorijs jau pastāv, tiek uztverta 'OSError' un tiek izdrukāts kļūdas ziņojums.

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

>

>

Izvade

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

FAQ

Kāda ir atšķirība starp os.mkdir() un os.makedirs()?

os.mkdir()>tiek izmantots, lai izveidotu vienu direktoriju, un tas rada kļūdu, ja vecākdirektorija nepastāv.

os.makedirs()>pēc vajadzības izveido vecākdirektorijus, ļaujot izveidot ligzdotus direktorijus, un tas nerada kļūdu, ja direktoriji jau pastāv.

Kad man vajadzētu izmantot pathlib.Path.mkdir() vs os.mkdir() vai os.makedirs()?

Strādājot ar ceļiem un direktorijiem, izmantojiet `pathlib.Path.mkdir()`, jo tas nodrošina modernāku un uz objektu orientētāku pieeju failu sistēmas darbībām.

pandas šarnīrs

'os.mkdir()' un 'os.makedirs()' ir piemēroti pamata direktoriju izveidei, bet 'pathlib' tiek dota priekšroka uzlabotai ceļu manipulācijai un direktoriju pārvaldībai.