Alla funktioner i OS-modulen höjs OSError 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.
os.mkdir()> metod i Pytonorm används för att skapa en katalog i Python eller skapa en katalog med Python namngiven sökväg med det angivna numeriska läget. Denna metod höjer FileExistsError om katalogen som ska skapas redan finns.
os.mkdir() Syntax i Python
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.
os.mkdir() metod Exempel
Det finns olika användningssätt för os.mkdir() för att skapa en katalog i Python eller skapa en katalog med Python med hjälp av os.mkdir. Här diskuterar vi några allmänna exempel på att skapa en katalog i Python eller skapa en katalog med Python som de följer .
Skapa katalog i Python
I det här exemplet använder kodenos.mkdir()>till Pytonorm skapa mapp två kataloger: GeeksForGeeks och ihritik i katalogen /home/User/Documents. Den första katalogen skapas med standardbehörigheter, medan den andra skapas med specificerade behörigheter (läge 0o666).
Python3
gjut sträng till int
#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)> |
>
>Produktion
Directory 'GeeksForGeeks' created Directory 'ihritik' created>
Fel vid användning av os.mkdir()-metoden
I det här exemplet använder Python-skriptet `os.mkdir()` för att skapa en katalog som heter GeeksForGeeks i sökvägen /home/User/Documents. Om katalogen redan finns, kommer en `FileExistsError` att visas. Om den angivna sökvägen är ogiltig kommer en `FileNotFoundError` att visas.
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)> |
>
>Produktion
Traceback (most recent call last): File 'osmkdir.py', line 17, in os.mkdir(path) FileExistsError: [Errno 17] File exists: '/home/User/Documents/GeeksForGeeks'>
Hantering av fel vid användning av os.mkdir()-metoden
I det här exemplet försöker Python-skriptet skapa en katalog som heter GeeksForGeeks i sökvägen /home/User/Documents med `os.mkdir(). Om katalogen redan finns fångas ett `OSError` och felmeddelandet skrivs ut.
Python3
strängen innehåller
# 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)> |
>
>Produktion
[Errno 17] File exists: '/home/User/Documents/GeeksForGeeks'>
FAQ
Vad är skillnaden mellan os.mkdir() och os.makedirs()?
os.mkdir()>används för att skapa en enskild katalog, och det ger upphov till ett fel om den överordnade katalogen inte finns.
os.makedirs()>skapar överordnade kataloger efter behov, vilket tillåter skapandet av kapslade kataloger, och det ger inte upp ett fel om katalogerna redan finns.
När ska jag använda pathlib.Path.mkdir() vs os.mkdir() eller os.makedirs()?
Använd `pathlib.Path.mkdir()` när du arbetar med sökvägar och kataloger, eftersom det ger ett mer modernt och objektorienterat tillvägagångssätt för filsystemoperationer.
`os.mkdir()` och `os.makedirs()` är lämpliga för grundläggande katalogskapande, men `pathlib` är att föredra för mer avancerad sökvägsmanipulation och kataloghantering.