File & Exception & Log Handling (Boost Course AI Lecture 4)

박상우·2023년 1월 2일
0

Boost Course

목록 보기
3/7
post-thumbnail

파이썬 예외 처리

try except

try:
	
except ErrorName:

전체를 exception으로 잡는 것은 좋은 코드가 아님
주로 로직이 아닌, 파일이 없는 등 에러가 있는 경우에 try~except 구문을 사용하는 것이 좋음

raise 구문

raise exceptionType(예외정보):

강제로 error를 발생시키는 것

assert 구문

특정 조건에 만족하지 않으면 error를 발생

File Handling

Text File

인간도 이해할 수 있음
보통 메모장으로 열 수 있는 파일은 Text file

Binary 파일

컴퓨터만 이해할 수 있는 이진법 형식 파일
메모장으로 열면 깨져 보임
excel, word 등

Text file 접근

open, with 등 구문과 함께 파일을 읽고 수정할 수 있음

f = open("i_have_a_dream.txt", "r" )
contents = f.read()
print(contents)
f.close()

readlines는 한번에 다 불러오지만 readline은 한 줄씩 불러오므로, for 문과 함께 사용할 수 있음

mode를 w로 변경하면 writing을 할 수 있는데 encoding을 추가 해야 함

a는 추가 모드로 글을 추가 할 수 있음

OS module

os 모듈을 사용해 직접적으로 파일을 관리할 수 있음

주소를 지정할 때 +가 아니라 os.path.join 함수를 사용하는 것이 충돌을 피하기에 좋음

Pickle module

객체는 메모리상에만 존재
저장하고 싶다면?
Pickle 모듈을 통해 객체를 저장할 수 있음!

Logging Handling

상황을 기록하는 것이 바로 Log
유저의 접근, 프로그램의 exception, 특정 함수의 사용 등을 기록
기록된 로그를 분석하여 의미있는 결과를 도출할 수 있음

기록을 print로 남길수 있음
그러나 Console 창에만 남기는 기록은 분석시 사용 불가

Logging module

python의 기본 Log 관리 모듈
Debug, Info, WArning, Error, Critical 등 logging level을 설정할 수 있음

Config File

Section, Key, Value로 값을 저장

Argparser

콘솔창에서 프로그램 실행 시 실행 됨

profile
세상아 덤벼라

0개의 댓글