Python

[파이썬] zip 파일 read, 압축/ 해제 - read_csv, compression, zipfile

weweGH 2025. 3. 19. 21:08
반응형

zip 파일 read, 압축/해제
zip 파일 read, 압축/해제


zip 파일 read, 압축/ 해제 - read_csv, compression, zipfile


들어가며


파이썬에서 zip 파일을 읽고, 쓰는 방법을 소개합니다. read_csv의 compression 옵션을 통하여 압축을 해제하지 않고도 파일을 읽을 수 있습니다. zipfile 패키지를 통해서는 zip 파일을 압축 해제하고, 압축 파일을 생성할 수 있습니다.


zip 파일 read - pd.read_csv, compression


먼저 필요한 패키지인 pandas를 다운로드하고, import 합니다.

# pip install pandas
import pandas as pd

test_fc.zip
test_fc.zip


만약에 압축된 csv인 test_fc.zip를 읽는다고 가정하겠습니다. read_csv로 파일을 읽을 때, compression='zip' 옵션을 넣어주면 압축을 해제하지 않고 바로 읽을 수 있습니다.

train_df = pd.read_csv('test_fc.zip', compression='zip')
train_df.head()

train_df
train_df

반응형

zip 파일 압축 - zipfile


먼저 필요한 패키지인 os와 zipfile을 import 합니다. 두 패키지 모두 파이썬에 내장되어 있으므로 패키지 설치가 필요 없습니다.

import os
from zipfile import ZipFile

다음과 같이 압축할 txt파일이 있는 폴더를 os의 chdir을 통하여 작업폴더로 지정합니다. 그리고 'w' 모드로 파일들을 압축하고, close로 zip_txt를 닫으면 test_dir 폴더 안에 txt파일을 압축한 test_dir.zip 압축 파일이 생성됩니다.

os.chdir('/Users/User/Desktop/test_dir/') # 압축할 파일이 있는 경로

with ZipFile('test_dir.zip', 'w') as zip_txt:
   zip_txt.write('test1.txt')
   zip_txt.write('test2.txt')
   zip_txt.write('test3.txt')

zip_txt.close()

test_dir
test_dir


zip 파일 압축 해제 - zipfile


먼저 필요한 패키지인 os와 zipfile을 import 합니다. 두 패키지 모두 파이썬에 내장되어 있으므로 패키지 설치가 필요 없습니다.

import os
from zipfile import ZipFile

압축 파일을 해제하면, 현재 작업 폴더로 저장되기 때문에 os의 chdir을 통하여 현재 작업 폴더를 지정합니다. 그리고 Zipfile의 extractall 옵션으로 압축을 해제합니다. 다음과 같이 test_dir.zip에 압축되어 있는 파일들을 test_dir_yy로 저장할 수 있습니다.

os.chdir('/Users/User/Desktop/test_dir_yy/') # 압축 해제한 파일을 저장할 경로
ZipFile('/Users/User/Desktop/test_dir/test_dir.zip').extractall() # 압축 파일 경로

test_dir_yy
test_dir_yy


반응형