Python을 사용하여 한 디렉터리에서 다른 디렉터리로 파일 이동

Lakshay Kapoor 2023년1월30일
  1. shutil.move()함수를 사용하여 Python에서 파일 이동
  2. os.rename()또는os.replace()함수를 사용하여 Python에서 파일 이동
  3. pathlib모듈을 사용하여 Python에서 파일 이동
Python을 사용하여 한 디렉터리에서 다른 디렉터리로 파일 이동

한 디렉토리에서 다른 디렉토리로 파일을 이동하는 것은 그렇게 큰 문제가 아닌 것처럼 들릴 수 있지만 때때로 파일을 조작하는 데 많은 도움이됩니다.

이 튜토리얼은 Python에서 한 디렉터리에서 다른 디렉터리로 파일을 이동하는 몇 가지 방법을 소개합니다.

shutil.move()함수를 사용하여 Python에서 파일 이동

shutil모듈은 파일 또는 파일 세트에 대한 고급 조작에 도움이되는 Python 모듈입니다. 이 모듈은 어딘가에서 파일을 복사하거나 파일을 제거하는 것과 같은 작업에서 작동합니다.

shutil모듈의 도움으로 한 디렉토리에서 다른 디렉토리로 파일을 이동하기 위해shutil.move()가 호출됩니다.

예:

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)

여기에서listdir()함수는 디렉토리에있는 모든 파일의 전체 목록을 가져 오는 데 사용되는os모듈에서 사용됩니다. for루프를 사용하여 파일을 이동하고shutil모듈의move()함수가 한 디렉토리에서 다른 디렉토리로 파일을 전송하는 데 사용됩니다.

os.rename()또는os.replace()함수를 사용하여 Python에서 파일 이동

많은 경우 사용자는 Python을 통해 기본 시스템에 연결해야합니다. 이 경우os모듈이 작동합니다. os모듈은 기본적으로 사용자와 컴퓨터의 운영 체제 사이에서 중재자 역할을하므로 사용자가 운영 체제와 올바르게 연결할 수 있습니다.

이 모듈의 기능 중 하나는 파일을 한 위치에서 다른 위치로 이동하는 데 사용되는rename()모듈입니다. 이 함수는 해당 파일의 디렉토리 이름을 변경하여 파일을 이동합니다.

이 모듈의 또 다른 기능은replace()함수입니다. 이 기능은 파일 또는 현재 디렉토리의 이름을 바꾸는 데 도움이됩니다. 대상은 디렉토리가 아닌 파일이어야합니다. 따라서 대상이 파일이면 오류없이 대체됩니다.

결론적으로 파일의 최종 대상이 원본과 동일한 디스크에 있으면rename()함수가 사용됩니다. 그리고 파일의 대상을 변경해야하는 경우replace()를 사용해야합니다.

예:

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)

여기에서도 초기 및 최종 디렉토리의 경로를 먼저 정의하여 동일한 절차를 따릅니다. 그런 다음listdir()함수를 사용하여 현재 디렉토리의 모든 파일 목록을 가져옵니다. 그런 다음for루프를 사용하여 해당 파일의 대상을 덮어 씁니다.

pathlib모듈을 사용하여 Python에서 파일 이동

Python의pathlib모듈은 다른 파일과 사전을 조작하는 데 사용되는 객체를 제공하는 데 사용되는 표준 모듈입니다. 파일 작업을위한 핵심 개체를 Path라고합니다.

예:

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

관련 문장 - Python File

관련 문장 - Python Dictionary