Python | método os.makedirs()

|

Todas as funções no módulo os geram OSError para nomes e caminhos de arquivo inválidos ou inacessíveis ou outros argumentos que são do tipo correto, mas não são aceitos pelo sistema operacional.

os.makedirs () em Python é usado para criar um diretório recursivamente. Isso significa que, ao criar o diretório de destino, se algum diretório de camada intermediária estiver ausente, os.makedirs() criará todos eles.
Por exemplo, considere o seguinte caminho:

 / home / User / Documents / GeeksForGeeks / Authors / ihritik 

Suponha que queremos criar o diretório "ihritik", mas o " GeeksForGeeks "e" Créditos "não estão disponíveis enquanto em trânsito. Em seguida, os.makedirs() criará todo o diretório inacessível / ausente no caminho especificado. Primeiro GeeksForGeeks e Authors serão criados, então o diretório ihritik será criado.

Sintaxe: os.makedirs (caminho , modo = 0o777, exist_ok = False)

Parâmetro:
caminho : Um objeto semelhante a um caminho que representa um caminho de sistema de arquivos. Um objeto do tipo caminho é um objeto string ou bytes que representa um caminho.
mode (opcional): Um valor Integer que representa o modo do diretório recém-criado. Se este parâmetro for omitido, o valor padrão Oo777 será usado.
exist_ok (opcional): Um valor padrão False é usado para este parâmetro. Se o diretório de destino já existir, um OSError será gerado se seu valor for False, caso contrário, não.

Tipo de retorno: Este método não retorna nenhum valor.

Código nº 1: usando os.makedirs () método para criar um diretório

# Programa Python para explicar o sistema operacional. makedirs () método


# module import os

import os


# Diretório Leaf

diretório = "ihritik"


# Diretórios pai

parent_di r = "/ home / Usuário / Documentos / GeeksForGeeks / Autores"


# Caminho

caminho = os.path.join ( (parent_dir, diretório)


# Cria diretório
# & # 39; ihritik & # 39;
os.makedirs (caminho)

print ( "Directory’% s’ criou " % diretório)


# Diretórios & # 39; GeeksForGeeks & # 39; e & # 39; Autores & # 39;
# será criado também
# se não existir


# Diretório folha

diretório = " c "


# Diretórios pai

parent_dir = " / home / User / Documents / Python.Engineering / a / b "


# Modo

modo = 0o666

caminho = os.path.join ( (parent_dir, diretório)


# Cria diretório
# & # 39; c'


os.makedirs (caminho, modo)

print ( "Diretório’% s’ criado " % diretório )


# & # 39; GeeksForGeeks & # 39 ;, & # 39; um & # 39; e & # 39; b & # 39;
# também será gerado se
# não existir


# Se algum nível intermediário
# sem catálogo
# os.makedirs () método
# criá-los


O # os. O método makedirs () pode ser
# usado para criar uma árvore de diretórios

Sair :

 Diretório ’ihritik’ criado Diretório’ c’ criado 

Código nº 2: Erros ao usar os.makedirs () método

< /table>

Sair :

 Traceback (última chamada mais recente): Arquivo "makedirs.py", linha 21, em os.makedirs (caminho) Arquivo "/usr/lib/python3.6/os.py", linha 220, em makedirs< /a> mkdir (nome, modo) FileExistsError: [Errno 17] O arquivo existe: ’/ home / User / Documents / GeeksForGeeks / ihritik’ 

Código # 3: Tratamento de erros ao usar o sistema operacional.makedirs () método

# programa Python para explicar o sistema operacional.makedirs () código


# importação do módulo os

import os


O # os.makedirs () método chamará
# OSE error if directory
# já existe para criar


# Diretório

diretório = "ihritik" < /p>


# Caminho para o diretório pai

parent_dir = "/ home / User / Documents / GeeksForGeeks"


# Caminho

caminho = os.path.join ( (parent_dir, diretório)


# Cria diretório
# & # 39; ihritik & # 39;
os.makedirs (caminho)

print ( " Diretório ’% s’ criado" % diretório)

# Programa Python para explicar o sistema operacional.makedirs () método


# import do módulo os

import os


O método # os.makedirs () chamará
# erro OSE se diretório
# já existe para criar
# Mas pode ser suprimido
# configurando o valor do parâmetro
# exist_ok as Verdadeiro


# Diretório

diretório = "ihritik"


# Caminho para o diretório pai

parent_dir = "/ home / ihritik / Desktop / GeeksForGeeks"


# Caminho

caminho = os.path.join ( (parent_dir, diretório)


# Cria diretório
# & # 39; ihritik & # 39 ;

tente :

os.makedirs (caminho, exist_ok = True )

print ( "Diretório’% s’ criado com sucesso" % diretório)

exceto OSError as error:

print ( " O diretório ’% s’ não pode ser criado" )


# Configurando Existence_of_s como True
# um erro já lançado
# diretório existente pode ser suprimido
# mas outro OSError pode ser gerado
# devido a outro erro como
# caminho inválido

Sair:

 Diretório ’ihritik’ criado com sucesso 

Link: https:/ / documentos. python.org/3/library/os.html