Categories: Bash Scripts

파이썬 예외 처리: try-except 문으로 안전한 코드 작성하기

파이썬 예외 처리: try-except 문으로 안전한 코드 작성하기

안녕하세요, mj입니다. 오늘은 파이썬에서 예외 처리 방법에 대해 알아보겠습니다. 프로그래밍을 하다 보면 예상치 못한 오류가 발생하는 경우가 많습니다. 이러한 오류를 적절하게 처리하지 않으면 프로그램이 중단되거나, 심각한 문제를 일으킬 수 있습니다. 그래서 우리는 try-except 문을 사용하여 안전한 코드를 작성해야 합니다.

1. try-except 문 기본 구조

try-except 문은 다음과 같은 기본 구조를 가집니다:

try:
    # 위험한 코드
except ExceptionType:
    # 예외 처리 코드
        

위의 구조에서 try 블록 안에 위험한 코드를 작성하고, except 블록에서는 해당 코드에서 발생할 수 있는 예외를 처리합니다.

2. 예외 처리 예시

2.1. ZeroDivisionError 처리 예시

0으로 나누는 경우 발생하는 ZeroDivisionError를 처리하는 예시입니다.

try:
    result = 10 / 0
except ZeroDivisionError:
    print("0으로 나눌 수 없습니다.")
        

출력 결과: 0으로 나눌 수 없습니다.

2.2. ValueError 처리 예시

숫자가 아닌 값을 정수로 변환할 때 발생하는 ValueError를 처리하는 예시입니다.

try:
    number = int("문자열")
except ValueError:
    print("정수로 변환할 수 없습니다.")
        

출력 결과: 정수로 변환할 수 없습니다.

2.3. FileNotFoundError 처리 예시

존재하지 않는 파일을 열 때 발생하는 FileNotFoundError를 처리하는 예시입니다.

try:
    with open("없는파일.txt", "r") as file:
        content = file.read()
except FileNotFoundError:
    print("파일을 찾을 수 없습니다.")
        

출력 결과: 파일을 찾을 수 없습니다.

2.4. IndexError 처리 예시

리스트의 인덱스 범위를 초과할 때 발생하는 IndexError를 처리하는 예시입니다.

my_list = [1, 2, 3]
try:
    print(my_list[5])
except IndexError:
    print("인덱스 범위를 초과했습니다.")
        

출력 결과: 인덱스 범위를 초과했습니다.

2.5. KeyError 처리 예시

딕셔너리에 없는 키를 조회할 때 발생하는 KeyError를 처리하는 예시입니다.

my_dict = {"a": 1, "b": 2}
try:
    print(my_dict["c"])
except KeyError:
    print("존재하지 않는 키입니다.")
        

출력 결과: 존재하지 않는 키입니다.

3. 여러 예외 처리하기

try 블록에서 여러 예외를 처리할 수도 있습니다. 예를 들어:

try:
    x = int(input("숫자를 입력하세요: "))
    result = 10 / x
except (ValueError, ZeroDivisionError) as e:
    print("입력 오류:", e)
        

위 예제는 사용자가 숫자가 아닌 값을 입력하거나 0을 입력했을 때 모두 처리할 수 있습니다.

4. 예외 발생시키기

우리는 raise 문을 사용하여 사용자 정의 예외를 발생시킬 수 있습니다. 예를 들어:

def check_age(age):
    if age < 0:
        raise ValueError("나이는 0보다 작을 수 없습니다.")
    print("입력한 나이:", age)

try:
    check_age(-1)
except ValueError as e:
    print(e)
        

출력 결과: 나이는 0보다 작을 수 없습니다.

마무리

이상으로 파이썬의 예외 처리 방법에 대해 알아보았습니다. try-except 문을 사용하면 코드의 안전성을 높이고, 예외 상황에서도 프로그램이 중단되지 않도록 할 수 있습니다. 다양한 예제를 통해 이해를 돕기 위해 노력했으니, 실제로 코드에 적용해 보시기 바랍니다. 감사합니다!

안녕히 계세요, mj입니다.

mj

Recent Posts

대화형 데이터 시각화의 장점과 활용 방법 | 파이썬 가이드

파이썬을 활용한 대화형 데이터 시각화의 장점과 다양한 활용 사례를 알아보세요.

5일 ago

파이썬 대화형 데이터 시각화 기초 – MJ의 블로그

대화형 데이터 시각화의 기초를 배우고, 파이썬을 활용한 다양한 기법을 알아보세요.

1개월 ago

파이썬으로 대화형 데이터 시각화 만드는 방법

파이썬으로 대화형 데이터 시각화를 만드는 방법을 알아보세요. 다양한 예시와 함께 제공합니다.

1개월 ago

대화형 데이터 분석 도구의 완벽한 가이드

대화형 데이터 분석 도구의 종류와 사용법을 소개합니다. 예시와 함께 알아보세요.

1개월 ago

파이썬 대화형 대시보드 디자인 원칙

대화형 대시보드의 효과적인 디자인 원칙과 예시를 소개합니다.

2개월 ago

파이썬으로 대화형 대시보드 구현하기 – mj의 블로그

파이썬을 이용한 대화형 대시보드 구현 방법을 배우고 다양한 예시를 확인하세요.

2개월 ago