본문 바로가기
Tech Stack/Python

예외 처리

by jaeaemin 2021. 8. 6.

 

Try, catch 문

 


try :
         ...
except  [  발생 오류 [ as 오류 메시지 변수 ] ]:
        ....

try 블록 수행 중 오류가 발생하면 except 블록이 실행된다. 하지만 try 블록에서 오류가 발생하지 않는다면 except 블록은 수행되지 않는다. 

except에는 추가로 발생 오류를 제한할 수 있는 방식과 발생 오류와 오류메시지 변수까지 포함하여 실행할 수 있다. 

 

또한 except문은 단일로 선언하는 것 뿐만아니라 다중으로 선언하여서 각 발생 오류에 대해서 개별적으로 처리가 가능하다.

동일한 처리를 2개 이상의 발생 오류에 대해서 except문을 사용하는 경우에는 인자값으로 써 넣어주면 함께 처리가 가능하다 

 

(ex)

Try:       
         4  /  0
except  ZeroDivisionError  as  e: 
         print(e)

except  (IndexError , StackOverflow)
        print('힝')

 =>  결과값 : divison by zero 

 

 

Try .. finally 

try문에는 finally절을 사용할 수 있다. finally문은 try문 수행 완료 후 항상 수행된다. 보통의 경우 사용한 리소스를 반납할 때 많이 사용한다.

 

다음 예를 보자. 

 


f  =  open ( 'foo.txt' , w )
try :  
      ...
finally 
     f.close()

 

Try문에 else절 사용

 

Try:  
         ...
except  ZeroDivisionError  as  e: 
         .
. 오류 발생 시 실행

else:
       .. 오류가 없는 경우 실행

 

 

오류 회피 & 발생

반응형

'Tech Stack > Python' 카테고리의 다른 글

정규 표현식  (0) 2021.08.13
내장함수  (0) 2021.08.10
패키지  (0) 2021.08.03
모듈  (0) 2021.08.02
클래스  (0) 2021.07.30