본문 바로가기
Python/파이썬 기초

파이썬 예외처리 (try, except, finally)

by PySun 2023. 7. 31.
반응형

 
예외처리(Exception Handling)는 파이썬 프로그램에서 발생할 수 있는 오류나 예외 상황에 대처하는 방법을 말합니다. 프로그램이 오류를 만나더라도 강제 종료되지 않고, 예외를 잘 처리하여 원활한 실행을 지원하도록 합니다. 파이썬에서는 try, except, else, finally 등의 예외처리 구문을 제공합니다.

1. 기본적인 예외처리:

  • try 블록 안에 예외가 발생할 가능성이 있는 코드를 작성하고, except 블록에서 예외를 처리합니다. 예외가 발생하면 프로그램이 강제 종료되지 않고, except 블록이 실행됩니다.
try:
    # 예외가 발생할 가능성이 있는 코드
    result = 10 / 0
except ZeroDivisionError:
    # 예외가 발생했을 때 처리하는 코드
    print("0으로 나눌 수 없습니다.")

2. 여러 예외처리:

  • 여러 종류의 예외를 처리하려면 여러 개의 except 블록을 사용합니다. 각 except 블록은 다른 예외에 대한 처리를 담당합니다.
try:
    x = int(input("정수를 입력하세요: "))
    result = 10 / x
except ValueError:
    print("정수를 입력해야 합니다.")
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")

3. 예외 메시지 출력:

  • except 블록에서 예외 메시지를 출력하려면 as 키워드를 사용하여 예외를 변수에 저장할 수 있습니다.
try:
    x = int(input("정수를 입력하세요: "))
    result = 10 / x
except ValueError as ve:
    print("에러 발생:", ve)
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")

4. 모든 예외처리:

  • except 블록에 오류명을 입력하지 않으면 모든 오류에 대해 예외처리를 할 수 있습니다.
# 모든 오류에 대해 예외처리 할 때
try:
    x = int(input("정수를 입력하세요: "))
    result = 10 / x
except:
    print("예외가 발생했습니다.")

# 모든 오류에 대해 예외처리 하지만 오류명을 알고 싶을 때
try:
    x = int(input("정수를 입력하세요: "))
    result = 10 / x
except Exception as e:
    print("예외가 발생했습니다.", e)

5. else 구문 활용:

  • else 블록은 try 블록 안의 코드가 예외 없이 실행되었을 때 실행됩니다. 예외가 발생하지 않은 경우에 대한 추가적인 처리를 할 수 있습니다.
try:
    x = int(input("정수를 입력하세요: "))
    result = 10 / x
except ValueError:
    print("정수를 입력해야 합니다.")
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")
else:
    print("결과:", result)

6. finally 구문 활용:

  • finally 블록은 예외 발생 여부와 상관없이 항상 실행됩니다. 보통 파일이나 네트워크 연결 등 리소스를 정리할 때 유용하게 사용됩니다.
try:
    x = int(input("정수를 입력하세요: "))
    result = 10 / x
except ValueError:
    print("정수를 입력해야 합니다.")
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")
else:
    print("결과:", result)
finally:
    print("예외처리가 완료되었습니다.")

예외처리를 통해 프로그램은 예외적인 상황에 대처하며, 예측 가능한 동작을 유지할 수 있습니다. 이를 통해 프로그램의 안정성을 높이고 사용자 경험을 개선할 수 있습니다. 예외처리는 모든 파이썬 프로그래머에게 필수적인 기능으로, 특히 초보자들에게는 프로그램의 이해와 관리를 돕는 중요한 도구입니다.
 

반응형

'Python > 파이썬 기초' 카테고리의 다른 글

파이썬 독학 커리큘럼 - 기초 마스터  (0) 2023.08.15
파이썬으로 계산기 만들기  (0) 2023.08.01
파이썬 패키지 (packages)  (0) 2023.07.30
파이썬 모듈 (module)  (0) 2023.07.30
파이썬 클래스 (Class)  (0) 2023.07.29