파이썬 shutil
모듈은 파일 및 디렉토리 관련 작업을 수행하는 데 유용한 함수와 클래스를 제공합니다. 그 중에서 make_archive()
함수는 파일이나 디렉토리를 압축하는 일을 처리해줍니다. 이 함수를 사용하여 압축 파일을 만들 때, 원하는 압축 포맷을 지정하는 방법을 알아보겠습니다.
make_archive()
함수
shutil.make_archive(base_name, format, root_dir, **kwargs)
함수는 주어진 경로의 파일 또는 디렉토리를 압축하여 압축 파일을 생성합니다. base_name
은 생성할 압축 파일의 이름이며, format
은 원하는 압축 포맷을 지정하는 매개변수입니다. 압축 포맷은 'zip'
, 'tar'
, 'gztar'
, 'bztar'
, 'xztar'
등 다양한 옵션을 제공합니다.
압축 포맷 지정하기
make_archive()
함수를 사용할 때, format
매개변수에 압축 포맷을 지정합니다. 예를 들어, zip
포맷으로 압축 파일을 생성하려면 아래와 같이 코드를 작성합니다.
import shutil
shutil.make_archive('archive', 'zip', 'directory_path')
여기서 'archive'
는 생성할 압축 파일의 이름이고, 'zip'
은 압축 포맷을 나타냅니다. 'directory_path'
는 압축할 디렉토리의 경로입니다. 위의 코드는 'directory_path'
디렉토리를 'archive.zip'
압축 파일로 생성합니다.
압축 포맷을 'zip'
이외의 다른 옵션으로 지정하고 싶다면, format
매개변수에 해당 포맷을 전달하면 됩니다. 예를 들어, tar
포맷으로 압축 파일을 생성하고 싶다면 'tar'
로 설정하면 됩니다.
import shutil
shutil.make_archive('archive', 'tar', 'directory_path')
위의 코드는 'directory_path'
디렉토리를 'archive.tar'
압축 파일로 생성합니다.
압축 포맷을 지정할 때, 올바른 포맷 문자열을 사용하는 것이 중요합니다. 올바른 포맷을 사용하지 않으면 UnsupportedOperation
오류가 발생할 수 있습니다. 따라서 사용 가능한 압축 포맷에 대한 자세한 내용은 파이썬 공식 문서를 참조하는 것이 좋습니다.
마치며
shutil.make_archive()
함수를 사용하여 파이썬에서 파일 및 디렉토리를 압축하는 일을 처리할 수 있습니다. 원하는 압축 포맷을 지정하여 효율적으로 압축 파일을 생성할 수 있습니다. 압축 포맷에 대한 정확한 값들은 파이썬 공식 문서에서 확인해야 합니다.