Mover arquivos de um diretório para outro usando Python

Lakshay Kapoor 30 janeiro 2023
  1. Use a função shutil.move() para mover arquivos em Python
  2. Use as funções os.rename() ou os.replace() para mover arquivos em Python
  3. Use o módulo pathlib para mover arquivos em Python
Mover arquivos de um diretório para outro usando Python

Mover arquivos de um diretório para outro pode não parecer tão complicado, mas às vezes ajuda muito na manipulação de arquivos.

Este tutorial apresentará algumas maneiras de mover arquivos de um diretório para outro no Python.

Use a função shutil.move() para mover arquivos em Python

O módulo shutil é um módulo Python que ajuda nas manipulações de alto nível em arquivos ou um conjunto de arquivos. Este módulo entra em ação em operações como copiar um arquivo de algum lugar ou remover um arquivo.

Para mover um arquivo de um diretório para outro diretório com a ajuda do módulo shutil, shutil.move() é chamado.

Exemplo:

import shutil
import os

file_source = "Path/Of/Directory"
file_destination = "Path/Of/Directory"

get_files = os.listdir(file_source)

for g in get_files:
    shutil.move(file_source + g, file_destination)

Aqui, a função listdir() é usada a partir do módulo os, que é usado para obter a lista completa de todos os arquivos presentes no diretório. Usamos um loop for para mover o arquivo e observamos que a função move() do módulo shutil é usada para transferir os arquivos de um diretório para outro.

Use as funções os.rename() ou os.replace() para mover arquivos em Python

Muitas vezes, o usuário precisa se conectar ao sistema principal por meio do Python. Nesse caso, o módulo os entra em ação. O módulo os atua basicamente como um mediador entre o usuário e o sistema operacional do computador para que o usuário possa se conectar ao sistema operacional de forma adequada.

Uma das funções deste módulo é o módulo rename() usado para mover arquivos de um local para outro. Esta função move os arquivos renomeando o nome do diretório desses arquivos.

Outra função deste módulo é a função replace(). Esta função ajuda a renomear o arquivo ou diretório atual. O destino deve ser um arquivo e não um diretório. Portanto, se o destino for um arquivo, ele será substituído sem nenhum erro.

Em conclusão, quando o destino final do arquivo está no mesmo disco de onde ele veio, a função rename() é usada. E se o destino do arquivo tiver que ser alterado, então replace() deve ser usado.

Exemplo:

import os

file_source = "Path/Of/Directory"
file_destination = "Path/Of/Directory"

get_files = os.listdir(file_source)

for g in get_files:
    os.replace(file_source + g, file_destination + g)

Aqui também, seguimos o mesmo procedimento definindo primeiro os caminhos dos diretórios inicial e final. Em seguida, usamos a função listdir() para obter a lista de todos os arquivos no diretório atual. Depois disso, usamos um loop for para substituir o destino desses arquivos.

Use o módulo pathlib para mover arquivos em Python

O módulo pathlib em Python é um módulo padrão usado para fornecer um objeto usado para manipular diferentes arquivos e dicionários. O objeto principal para trabalhar com arquivos é denominado Path.

Exemplo:

from pathlib import Path
import shutil
import os

file_source = "Path/Of/Directory"
file_destination = "Path/Of/Directory"

for file in Path(file_source).glob("randomfile.txt"):
    shutil.move(os.path.join(file_source, file), file_destination)
Lakshay Kapoor avatar Lakshay Kapoor avatar

Lakshay Kapoor is a final year B.Tech Computer Science student at Amity University Noida. He is familiar with programming languages and their real-world applications (Python/R/C++). Deeply interested in the area of Data Sciences and Machine Learning.

LinkedIn

Artigo relacionado - Python File

Artigo relacionado - Python Dictionary