Copiando, Movendo e Deletando Pastas com Python

Ana Maria Gomes
4 minutos de leitura

Conteúdos do tutorial

Quando trabalhamos com arquivos e diretórios em Python, temos à nossa disposição uma série de ferramentas que facilitam a manipulação desses elementos. Neste tutorial, vamos aprender a copiar, mover e deletar pastas utilizando os módulos pathlib e shutil.

Criando Pastas

Antes de copiar ou mover, precisamos saber como criar pastas. Para isso, utilizamos o método mkdir do módulo pathlib:

from pathlib import Path

# Definindo o caminho da nova pasta
caminho_pasta_destino = Path('destino4')

# Criando a pasta
caminho_pasta_destino.mkdir()

Se a pasta já existir esse método pode gerar uma excessão e sua excução será interrompida. Se você não quiser que essa exceção seja gerada, use o parâmetro exist_ok=True, da seguinte maneira:

caminho_pasta_destino.mkdir(exist_ok=True)

Para criar uma pasta e todas as pastas intermediárias até ela, utilize parents=True:

caminho_pasta_destino = Path('destino5/destino51')
caminho_pasta_destino.mkdir(parents=True)

Copiando Pastas

Para copiar uma pasta com todo o seu conteúdo, usamos o método copytree do módulo shutil:

import shutil

# Definindo o caminho da pasta original e da pasta de destino
pasta_original = Path('destino4')
pasta_destino = Path('destino1/destino4')

# Copiando a pasta
shutil.copytree(pasta_original, pasta_destino, dirs_exist_ok=True)

Movendo Pastas

O processo de mover uma pasta é semelhante ao de copiar, mas ao invés de duplicar, o conteúdo é transferido para o novo local:

# Movendo a pasta
shutil.move(str(pasta_original), str(pasta_destino))

Deletando Pastas

Para deletar uma pasta, temos duas opções. Se a pasta estiver vazia, podemos usar o método rmdir do pathlib:

# Deletando uma pasta vazia
caminho_pasta_destino.rmdir()

Se a pasta contiver arquivos ou outras pastas, usamos o método rmtree do shutil:

# Deletando uma pasta com conteúdo
shutil.rmtree(caminho_pasta_destino)

Considerações Finais

Ao trabalhar com a exclusão de pastas e arquivos, é preciso ter cuidado para não deletar conteúdos importantes acidentalmente. Sempre confirme as ações antes de executá-las e, se possível, faça backups dos seus dados regularmente.

Esperamos que este tutorial tenha sido útil para você aprender a manipular pastas em Python. Com essas ferramentas, você pode automatizar muitas tarefas e tornar seu fluxo de trabalho mais eficiente. Continue explorando e praticando para se tornar cada vez mais proficiente em programação Python!

Inscreva-se gratuitamente e fique atualizado

Receba toda semana um resumo dos principais conteúdos da Asimov direto no seu e-mail. 100% livre de spam.

Áreas de interesse: