[파이썬] shutil `shutil.copytree()`의 `dirs_exist_ok` 매개변수 사용하기

파이썬의 shutil 모듈은 파일 및 디렉토리 조작을 위한 많은 유틸리티 함수를 제공합니다. 이 중 하나인 copytree() 함수는 디렉토리와 그 하위 항목을 복사하는데 사용됩니다.

copytree() 함수를 사용할 때, 기존에 동일한 이름의 디렉토리가 이미 있는 경우 오류를 발생시킵니다. 그러나 파이썬 3.8부터는 dirs_exist_ok 매개변수를 사용하여 이를 조정할 수 있습니다.

dirs_exist_ok 매개변수는 불리언 값을 취하며, 기본값은 False입니다. 만약 이 매개변수를 True로 설정하면, copytree() 함수는 이미 있는 디렉토리를 오버라이드하지 않고 기존 디렉토리를 그대로 유지합니다.

아래는 dirs_exist_ok 매개변수를 사용한 copytree() 함수의 예제 코드입니다.

import shutil

# 디렉토리 복사
shutil.copytree('원본_디렉토리', '대상_디렉토리', dirs_exist_ok=True)

위의 예제에서, 원본_디렉토리는 복사하려는 디렉토리의 경로를 나타내고, 대상_디렉토리는 복사된 디렉토리의 저장 위치를 나타냅니다. copytree() 함수는 디렉토리와 그 하위 파일 및 디렉토리를 대상_디렉토리에 복사합니다. dirs_exist_ok=True로 설정되었으므로, 이미 있는 디렉토리가 있는 경우에도 오류 없이 복사가 진행됩니다.

dirs_exist_ok 매개변수를 사용하여 디렉토리 복사를 조작하면, 기존 디렉토리를 유지하면서 새로운 복사본을 생성하는 작업을 보다 효율적으로 수행할 수 있습니다.

Note: dirs_exist_ok 매개변수는 파이썬 3.8부터 지원되므로, 이전 버전에서는 사용할 수 없습니다.