[파이썬] 파일의 디렉토리 내 파일 이동

파이썬에서 파일을 다룰 때, 때때로 파일을 다른 디렉토리로 이동해야 할 수도 있습니다. 이 글에서는 Python의 내장 모듈인 shutil을 사용하여 파일의 디렉토리 내에서 파일을 이동하는 방법을 알아보겠습니다.

shutil 모듈

shutil은 Python에서 파일 및 디렉토리 작업을 수행하는 데 사용되는 유용한 모듈입니다. 이 모듈을 사용하여 파일을 복사, 이동, 이름 변경 등 다양한 작업을 할 수 있습니다.

파일 이동

파일을 다른 디렉토리로 이동하기 위해서는 shutil 모듈의 move() 함수를 사용합니다. 아래는 파일을 이동하는 간단한 예제 코드입니다.

import shutil

# 이동할 파일의 경로
source_path = '/path/to/source/file.txt'

# 이동할 파일의 대상 디렉토리 경로
target_directory = '/path/to/target/directory/'

# 파일 이동
shutil.move(source_path, target_directory)

위의 코드에서 source_path는 이동할 파일의 경로를 나타내고, target_directory는 파일을 이동할 대상 디렉토리의 경로를 나타냅니다. shutil.move() 함수를 호출하여 파일을 이동시킵니다.

파일을 이동할 때, 대상 디렉토리 경로에 이미 동일한 파일 이름이 있는 경우, 해당 파일은 덮어씌워집니다. 파일을 덮어쓰지 않고 이동하고 싶다면, 대상 디렉토리 경로에 이미 동일한 파일이 있는지 확인한 후에 move() 함수를 호출해야 합니다.

또한, 파일 이동 후에는 기존 파일의 경로가 유효하지 않아 해당 파일에 접근할 수 없게 됩니다. 따라서 파일을 이동하기 전에 이동할 파일에 액세스할 수 있는지 확인하는 것이 중요합니다.

예외 처리

파일 이동 시 발생하는 예외를 처리해야 합니다. 파일을 이동할 때 발생할 수 있는 일부 예외는 다음과 같습니다.

위의 예외들을 적절히 처리하여 안정성을 확보해야 합니다. 일반적으로 try-except 문을 이용해 예외 처리를 수행하는 것이 좋습니다.

try:
    shutil.move(source_path, target_directory)
except shutil.Error as e:
    print(f'파일 이동 에러: {e}')

위의 코드에서, shutil.move() 함수 호출 시 발생하는 shutil.Error 예외를 처리하여 에러 메시지를 출력합니다. 예외를 처리하는 방식은 해당 상황에 맞게 변경할 수 있습니다.

결론

Python의 shutil 모듈을 활용하여 파일의 디렉토리 내에서 파일을 이동하는 방법에 대해 배웠습니다. shutil.move() 함수를 사용하여 파일을 다른 디렉토리로 이동할 수 있으며, 예외 처리를 통해 안전하게 이동 작업을 수행할 수 있습니다. 이를 활용하여 파일 관리 작업을 효율적으로 처리할 수 있습니다.