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

[5-4] 예외 처리

by 준보틱스 2024. 12. 21.

예외처리

오류가 발생했을때 어떻게 할지 정하는 것

>>> try:
>>>     #오류가 발생할 수 있는 구문
>>> except Exception as e:
>>>     #오류 발생
>>> else:
>>>     #오류 발생하지 않음
>>> finally:
>>>     #무조건 마지막에 실행

try-except 문

>>> try:
        4 / 0
>>> except ZeroDivisionError as e:
>>> print(e)
division by zero

try-else 문

>>> try:
        f = open('none', 'r')
>>> except FileNotFoundError as e:
        print(str(e))
>>> else:
        data = f.read()
        print(data)
        f.close()

try-finally 문

>>> f = open('foo.txt', 'w')
>>> try:
        data = f.read()
        print(data)
>>> except Exception as e:
        print(e)
>>> finally:
        f.close()

 

Exception은 모든 오류들의 부모다. 그래서 무슨 오류인지 정확히 모른다면 Exception을 사용한다.

여러 개 오류 처리하기

>>> try:
        a = [1,2]
        print(a[3])
        4/0
>>> except ZeroDivisionError:
        print("0으로 나눌 수 없다.")
>>> except IndexError:
        print("인덱싱할 수 없다")

오류 회피하기

>>> try:
        f = open("nofile", 'r')
>>> except FileNotFoundError:
        pass

오류 일부러 발생시키기

>>> class Bird:
        def fly(self):
            raise NotImplementedError    #raise 뒤에 오류를 입력하면 오류가 실행된다.
    
>>> class Eagle(Bird):
        def fly(self):
            print("very fast")

>>> eagle = Eagle()
>>> eagle.fly()
very fast

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

[5-6] 외장함수  (0) 2024.12.22
[5-5] 내장함수  (0) 2024.12.21
[5-3] 패키지  (0) 2024.06.30
[5-2] 모듈  (0) 2024.06.30
[5-1] 클래스  (0) 2024.06.30