본문 바로가기
[챌린지]/[패스트캠퍼스] 파이썬 초격차

패스트캠퍼스 환급챌린지 11일차 미션 (2월 11일) : 파이썬으로 할 수 있는 모든 것 with 47개 프로젝트 초격차 패키지 수강 후기

by 쿠키토끼 2024. 2. 11.

[데일리 미션]

 

01. 제목

패스트캠퍼스 환급챌린지 11일차 미션 (2월 11일) : 
파이썬으로 할 수 있는 모든 것 with 47개 프로젝트 초격차 패키지 Online 수강 후기
 

02. 포스팅 본문 (학습 일기) 가이드

 
1. 학습 인증샷 2장 이상 포함

카메라로 직접 촬영한 수강 인증 사진 (캡쳐X)

 

2. 학습 후기 700자 이상 (공백 제외)

 

오늘은 파일 압축과 프로젝트 실습의 날이다. 저번과 마찬가지로 이전에 배웠던 부분이 정리가 아직안되었고 이해의 개념없이 그냥 따라하는 것으로 해서 머리 속에 들어오는 부분이 없어서 벌써 프로젝트를 끝낸다고 생각하니 아쉬운 마음이 컸다. 그래도 진도는 나가야하니 간단하게 학습부분을 정리하는 후기로 프로젝트를 공부하고 넘어가볼까 한다. 파일 압축이 필요한 이유에 대해서 나왔는데 정답을 알기전에 내가 파일 압축이 왜 필요할까 한 번 생각해보았다. 파일 압축이라는게 용량을 줄이기 위한 수단으로 나온 것인데 폴더 관리 프로그램에서 이 압축이 필요하다면 폴더를 관리함에 있어서 파일을 검색하고 불러오고 하는 일련의 과정에서 파일이 많을 수록 오래 걸리고 속도도 현저히 떨어질 것이다. 파일이 몇개밖에 없고 용량자체가 적다면 압축이 필요하진 않겠지만 대부분 많은 파일에 대한 관리를 못해서 필요한 경우라 효율적인 작업을 위해 반드시 하고 넘어가야할 작업이라고 생각한다. 이러한 생각을 바탕으로 강의를 들어보니 내 생각과 크게 다르지 않았고 이 원리가 왜 필요한지 생각하고 넘어가는 작업도 나중에 프로젝트를 할 때 한 번더 생각하게 만드니 필요한 작업이라고 본다. 파이썬에서 압축을 할 수 있는 라이브러리는 zlib 모듈인데 이는 데이터를 압축하거나 해제할 때 사용하는 모듈로 compress()와 decompress()(영어를 모른다하여도 de만 붙어도 반대되는 개념임을 아는 건 이제 상식) 함수를 써서 문자열을 압축하거나 해제한다. 여기서 압축할때 zlib.compress하고 매개변수에서 인코딩을 하는 개념이 중요하다. 반대로 decompress를 하고 디코딩 하도록한다. 다음은 gzip 모듈은 파일을 압축하거나 해제할 때 사용된다. 내부적으로는 zlib 알고리즘을 사용한다고 한다. 다음은 zipfile과 tarfile 모듈인데 둘 다 여러개 파일을 zip이나 tar 확장자로 하나로 합쳐서 압축할  때 사용된다. 압축해제시에는 extractall()을 쓰면 된다.

이제 이런 여러가지 라이브러리, 모듈을 통해서 프로젝트 실습을 해보았다.

진행 순서는 1) 압축 파일 정리 2) 파일명 정리 3) 폴더 생성 4) 파일 분류 및 이동 이 4가지를 통해 만들기 실습을 했다.

먼저 압축 파일 정리는 정리할 대상의 폴더의 경로를 지정해준다. 그리고 glob os 이용해서 압축 파일 확인을 하고 압축된 파일을 해제 하는 zipfile을 이용한다. 여기서 지난 시간보다 코딩이 길어진 부분은 한글을 사용한 부분이 깨짐을 방지하는 코드가 추가 되었다. 사실 우리가 한국에서 살고 있고 대부분 한국인이라면 한글 문서를 많이 쓰고 있기 때문에 이 과정이 사실상 필수라고 본다. (이전에 이 언어 세팅 부분때문에 utf-8 오류 무한지옥에 빠진 경험에 비추어) 

그리고 파일명 정리하는 openpyxl 라이브러리를 설치해서 활성화 시킨다. 파일명을 수정할 시트를 만들어준다. 여기서는 좀 복잡한 부분이 있어서 주석을 참조하고 이런 기능 정도만 있다고 보고 넘어가라고 해서 자세히 보진 않았다.(사실 하나하나 뜯어서 생각하면 머리에 쥐가 내려서 포기할까봐 느낌만 대충 보고 실행시키도록 했다)

이와 같이 함수를 정의하고 다음 함수를 실행하면 파일리스트가 엑셀파일로 생긴다. 폴더 생성을 시키고 파일 분류 및 이동 시켜준다. 마지막 부분에서는 그냥 따라하면서 실행해나간 경우라서 내 파일 폴더를 부분만 수정해서 써보기는 할텐데 내가 이 부분에 대한 것을 응용해야할 단계는 아직 아닌 것 같다. 이렇게 나에게는 어려운 폴더 관리 프로그램 프로젝트도 하나 끝이났다. 점 점 어려워지는 느낌이라 잠시 프로젝트를 떠나서 필수 문법 구간을 새로 보고 함수 정리를 다시 하는 게 나을 것 같아서 다음 시간 부터는 쉬어가는 느낌(?)으로다가 필수 문법을 공부해볼 생각이다.

 

03. 필수 본문 내용 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
 

04. 필수 해시태그 

#패스트캠퍼스 #직장인자기계발 #직장인공부 #환급챌린지 #패스트캠퍼스후기 #오공완
 

05. 필수 URL 

https://bit.ly/48sS29N

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

[수강 강의 클립] 

-Ch04. [파일/디렉터리] 업무효율 향상을 위한 폴더 관리 프로그램 만들기

05. 파일 압축 - zlib, gzip, zipfile, tarfile

06. 미니 프로젝트 실습

 

[※ 기타사항메모 ※]
{100% 환급챌린지 미션 가이드 참조 : 

https://fastcampus.co.kr/event_online_challenge_2401_mission}

 

커리어 성장을 위한 최고의 실무교육 아카데미 | 패스트캠퍼스

성인 교육 서비스 기업, 패스트캠퍼스는 개인과 조직의 실질적인 '업(業)'의 성장을 돕고자 모든 종류의 교육 콘텐츠 서비스를 제공하는 대한민국 No. 1 교육 서비스 회사입니다.

fastcampus.co.kr