Python

Python 문법 기초 30 - 예외처리(try ~ except)

코딩탕탕 2022. 10. 22. 17:16

 

# 예외처리 : 작업 도중 발생하는 에러에 대처하기
# try ~ except

def divide(a, b):
    return a / b

print('이런저런 작업을 하다가...')

c = divide(5, 2)
# c = divide(5, 0)
print(c)

print()
try:
    c = divide(5, 2)
    # c = divide(5, 0)
    print(c)
    
    aa = [1, 2]
    print(aa[0])
    # print(aa[5])
    
    # open('C:/abc.txt')
    
except ZeroDivisionError:
    print('에러 : 0으로 나누면 안 돼')
except IndexError as err:
    print('에러 원인은 ', err)
except Exception as e:
    print('기타 에러는 : ', e)    
finally:
    print('에러 유무에 상관없이 반드시 실행')
    
print('프로그램 종료')


<console>
이런저런 작업을 하다가...
2.5

2.5
1
에러 유무에 상관없이 반드시 실행
프로그램 종료

try 안에 있는 것이 실행되고 그것이 어떠한 이유로(ex) err) 실행되지 않는다면 except를 실행한다.

finally는 실행여부와 상관없이 무조건 실행된다.