logo

Crear un directorio en Python

El módulo OS en Python proporciona funciones para interactuar con el sistema operativo. El sistema operativo se incluye en los módulos de utilidad estándar de Python. Este módulo proporciona una forma portátil de utilizar la funcionalidad dependiente del sistema operativo. Elos>yos.path>Los módulos incluyen muchas funciones para interactuar con el sistema de archivos. Todas las funciones en el módulo del sistema operativo aumentanOSError>en el caso de nombres y rutas de archivos no válidos o inaccesibles, u otros argumentos que tengan el tipo correcto pero que no sean aceptados por el sistema operativo.

Hay diferentes métodos disponibles en el módulo OS para crear un director. Estos son -



Usando os.mkdir()

os.mkdir()>El método en Python se utiliza para crear un directorio llamado ruta con el modo numérico especificado. Este método aumentaFileExistsError>si el directorio a crear ya existe.

Sintaxis: os.mkdir(ruta, modo = 0o777, *, dir_fd = Ninguno)

Parámetro:
camino: Un objeto similar a una ruta que representa una ruta del sistema de archivos. Un objeto similar a una ruta es una cadena o un objeto de bytes que representa una ruta.
modo (opcional): Un valor entero que representa el modo del directorio que se creará. Si se omite este parámetro, se utiliza el valor predeterminado Oo777.
dir_fd (opcional): Un descriptor de archivo que hace referencia a un directorio. El valor predeterminado de este parámetro es Ninguno.
Si la ruta especificada es absoluta, se ignora dir_fd.



Nota: El '*' en la lista de parámetros indica que todos los parámetros siguientes (aquí en nuestro caso 'dir_fd') son parámetros de palabras clave únicamente y se pueden proporcionar usando su nombre, no como parámetro posicional.

Tipo de devolución: Este método no devuelve ningún valor.

Ejemplo 1: Uso deos.mkdir()>método para crear directorio/archivo






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

>

>

Producción:

con forma completa
 Directory 'techcodeview.com' created Directory 'Geeks' created>

Ejemplo #2: Errores durante el usoos.mkdir()>método.




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

>

>

Producción:

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

Ejemplo #3: Error de manejo durante el usoos.mkdir()>método.




método java anulando
# 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)>

>

>

Producción:

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

Usando os.makedirs()

os.makedirs()>El método en Python se utiliza para crear un directorio de forma recursiva. Eso significa que al crear un directorio hoja, si falta algún directorio de nivel intermedio,os.makedirs()>El método los creará todos.
Por ejemplo, considere la siguiente ruta:

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

Supongamos que queremos crear el directorio 'Nikhil' pero el directorio 'GeeksForGeeks' y 'Autores' no están disponibles en la ruta. Entoncesos.makedirs()>El método creará todos los directorios no disponibles o faltantes en la ruta especificada. Primero se crearán 'GeeksForGeeks' y 'Authors' y luego se creará el directorio 'Nikhil'.

Sintaxis: os.makedirs(ruta, modo = 0o777, exist_ok = False)

Parámetro:
camino: Un objeto similar a una ruta que representa una ruta del sistema de archivos. Un objeto similar a una ruta es una cadena o un objeto de bytes que representa una ruta.
modo (opcional): Un valor entero que representa el modo del directorio recién creado. Si se omite este parámetro, se utiliza el valor predeterminado Oo777.
existe_ok (opcional): Se utiliza un valor predeterminado Falso para este parámetro. Si el directorio de destino ya existe, se genera un OSError si su valor es False; de ​​lo contrario, no.

Tipo de devolución: Este método no devuelve ningún valor.

Ejemplo 1: Uso deos.makedirs()>Método para crear un directorio.




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

>

>

Producción:

 Directory 'Nikhil' created Directory 'c' created>

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

>

>

Producción:

ejemplo de datos json
 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'>

Ejemplo #3: Manejo de errores al usar el método os.makedirs().




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

>

>

Producción:

 Directory 'Nikhil' created successfully>