파일의 압축과 압축 해제는 데이터를 효율적으로 관리하고 저장 공간을 절약하는 데 도움이 됩니다. Python에는 다양한 방법으로 파일을 압축하고 해제할 수 있는 라이브러리가 있습니다. 이번 포스트에서는 zipfile
모듈을 사용하여 파일을 압축하고, shutil
모듈을 사용하여 압축을 해제하는 방법에 대해 알아보겠습니다.
파일 압축하기
Python의 zipfile
모듈은 파일을 압축하는데 사용됩니다. 다음은 zipfile
을 사용하여 파일을 압축하는 예제 코드입니다:
import zipfile
def compress_files(file_paths, zip_name):
with zipfile.ZipFile(zip_name, 'w') as zipf:
for file in file_paths:
zipf.write(file)
file_list = ['file1.txt', 'file2.txt', 'file3.txt']
compress_files(file_list, 'compressed_files.zip')
위의 코드는 compress_files
함수를 정의하여 여러 개의 파일을 압축파일로 묶는 일을 수행합니다. with
문을 사용하여 zipfile.ZipFile
객체를 생성하면 압축 파일이 자동으로 생성되고, write()
메서드를 사용하여 파일을 추가할 수 있습니다.
파일 압축 해제하기
Python의 shutil
모듈은 파일 압축을 해제하는데 사용됩니다. 다음은 shutil
을 사용하여 파일을 압축 해제하는 예제 코드입니다:
import shutil
def extract_files(zip_name, extract_dir):
with zipfile.ZipFile(zip_name, 'r') as zipf:
zipf.extractall(extract_dir)
extract_files('compressed_files.zip', 'extracted_files')
위의 코드는 extract_files
함수를 정의하여 압축 해제할 압축 파일과 추출할 디렉토리를 지정합니다. with
문을 사용하여 zipfile.ZipFile
객체를 생성하고, extractall()
메서드를 사용하여 모든 파일을 지정된 디렉토리로 추출합니다.
마무리하며
Python의 zipfile
및 shutil
모듈을 이용하면 파일을 압축하고 해제하는 것이 매우 간단해집니다. 이를 통해 데이터 관리와 공간 절약에 도움을 줄 수 있습니다. 이번 포스트를 통해 파일 압축과 압축 해제를 위한 기본적인 방법을 익힐 수 있었기를 바랍니다.