본문 바로가기
IT/Python 기초

[Python] 예외처리

by Tony Jung 2024. 1. 15.
반응형

개발을 하다보면 수많은 오류가 발생할 것입니다. 예기치 못한 오류가 발생할 때 적절한 예외처리는 개발물의 안정성과 신뢰성 그리고 디버깅에 많은 도움이 될 것입니다.  

예외처리의 기본 문법은 try, except, else, finally 입니다. 

try:
	#실행할 코드 
except:
	#오류가 발생할 경우 처리 
else: 
	#정상일 때 처리 
finally
	#예외 여부 상관없이 무조건 실행.

자 예시를 한번 들어 볼까요? 문자열을 float으로 형변환을 시도했습니다. 당연히 아래와 같은 에러가 발생하겠지요

Text='Tony'
float(Text)

ValueError: could not convert string to float: 'Tony'

그럼 예외처리로 다음과 같이 해볼게요 

try:
    float(text)
except:
    print("오류")
else:
    print(text)
finally:
    print("끝")

 

반응형

 

결과는 except의 "오류" 와 finally의 "끝" 이 출력될 것입니다. 만약 오류를 출력하고 싶지 않고 자연스럽게 넘어가게 하고 싶다면 pass 를 실행 시키면 되겠지요. 

참고로 파이썬의 예외 처리 내장 용어는 아래와 같답니다.

코드에 except: 라고 하면 모든 에러에 대한 예외처리가 진행되지만 특정한 에러에 대한 예외처리를 지정하거나, 에러마다 다른 예외 처리를 진행하고 싶다면 except 에러명 as 변수  와 같은 구문으로 개별 처리와, 로깅이 가능하답니다.  

아래는 예시입니다. ValueError (연산,함수가 계산할 데이터의 유형이 잘못되었을 때)가  발생할 때만 예외 처리가 될것입니다. 

try:
    float(text)
except ValueError as e:

    print(e)
else:
    print(text)
finally:
    print("끝")

 

많이많이 활용하세요 ~

반응형

댓글