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
만약에 압축된 csv인 test_fc.zip를 읽는다고 가정하겠습니다. read_csv로 파일을 읽을 때, compression='zip' 옵션을 넣어주면 압축을 해제하지 않고 바로 읽을 수 있습니다.
train_df = pd.read_csv('test_fc.zip', compression='zip')
train_df.head()
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()
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() # 압축 파일 경로
'Python' 카테고리의 다른 글
[파이썬] 디스플레이 옵션 설정 - pandas set_option, reset_option (4) | 2025.03.22 |
---|---|
[파이썬] 내장함수 str - 슬라이싱, find, contains, strip (10) | 2025.03.21 |
[파이썬] 허깅 페이스를 활용한 텍스트 감정 분석 (7) | 2025.03.18 |
[파이썬] print문/출력문 로그 txt 저장 - open, file (0) | 2025.03.17 |
[파이썬] 터미널 출력문 글꼴, 음영 색상 변경 - colorama (2) | 2025.03.16 |