code_study/python world
[오류 예외처리] try, except, else, finally
곧미남
2025. 8. 29. 11:41
오늘은 python으로 프로그램을 구현할 때, 오류가 발생했을 경우! 예외 처리를 하기 위해서 try, except 조건을 걸어서 후처리가 가능한데요. 그것에 대한 기본적인 프로세스를 간단한 예제로 실험해보겠습니다.
아래와 같이 예제 코드가 있는데요.
여기서, print(1/0)은 Exception : division by zero 오류를 출력합니다!
그래서 가상으로 오류를 만들어서 처리 프로세스를 알려드리겠습니다.
a = [1,2,3]
try:
for i in a:
print(i)
print(1/0)
except Exception as e:
print(f"Exception : {e}")
else:
print("else")
finally:
print("finally")
출력:
1
Exception : division by zero
finally
print(i)로 첫 번째 index가 출력되고, 그 후에 print(1/0)이 호출되어 error가 발생합니다. 그러면 except 구문으로 넘어가서 Exception : division by zero가 출력되지요. 그 후에 finally 구문으로 넘어가 print("finally")가 처리됩니다.
즉, 에러가 발생하면, 처리되는 프로세스는 try 구문(에러발생) → except 구문 → finally 구문 순서입니다.
이제는 print(1/0)을 주석 처리하여 정상 동작하는 코드로 변경했습니다.
a = [1,2,3]
try:
for i in a:
print(i)
# print(1/0)
except Exception as e:
print(f"Exception : {e}")
else:
print("else")
finally:
print("finally")
출력:
1
2
3
else
finally
정상적으로 설정한 print 문이 동작하는 것을 볼 수 있습니다. 그리고 여기서 중요한 점은! else 구문이 동작했다는 것입니다.
그렇습니다, 정상적으로 코드가 실행되면, (try 구문에서 오류가 발생하지 않으면,) else 구문이 실행되고, finally 구문이 실행되게 됩니다!
이러한 예외처리 프로세스를 참고해서 코드를 구현해보시면 좋을 것 같습니다.
읽어주셔서 감사합니다.
반응형