Python - 예외처리 Try / Except
2021. 9. 11. 10:55ㆍPython
이번 글에서는 파이썬의 예외처리 기능을 한번 적어본다.
우리가 코드를 실행할때 많은 에러가 발생하는데 이것을 우리가 넘겨도 되는 에러인지. 아닌지
혹은 에러가 발생한다면! 이라는 조건(분기)을 걸고 싶을 때 사용할 수 있다.
먼저 예제 코드부터 알아보자.
# 리스트 생성
num_list = [1,2,3,4,5,6,7,8,9,10]
for i in range(15):
print(num_list[i])
# 결과는??
결과는 1~ 10까지 숫자를 프린트 하고 범위가 넘어갔다는
OUT OF RANGE 같은 에러가 발생할 것 이다.
하지만 나는 이 에러가 발생해도 코드가 진행 되기를 원한다는 가정하에 아래 코드를 한번더 살펴 보도록 하겠다.
# 리스트 생성
num_list = [1,2,3,4,5,6,7,8,9,10]
# 예외처리 Try /Except 실행
try:
# 리스트에 있는 원소를 15개 불러오는 반복문 실행
for i in range(15):
print(num_list[i])
except:
# 리스트에는 10개의 원소만 있기 때문에 11번째 원소에서 Out of range 에러가 출력되며
# 아래 프린트문 실행
print("범위를 벗어났습니다.")
# 에러 발생이후 Except문이 실행 되고 아래 또다른 코드 실행
print("리스트의 총합을 구합니다.")
sum = 0
for j in num_list:
sum = sum + j
print(f"총합은 {sum} 입니다")
이 코드를 한번 실행해 보면 예외처리에 대한 느낌이 올거라고 생각한다. 사실 이 포스팅은 어떤 원리나 그런것을 설명하기 보단. 사용에 목적을 두고 작성되었음을 이해하기 바란다.
text = '100%'
try :
number = int(text) # 에러가 발생할 가능성이 있는 코드
except ValueError : # 에러 종류
print('{}는 숫자가 아닙니다.'.format(text)) #에러가 발생 했을 경우 처리할 코드
위 코드와 같이 Except에 내가 특별하게 거르고싶은 에러만을 설정할 수도 있다.
'Python' 카테고리의 다른 글
java.nio.file.invalidpathexception: illegal char <*> at index 84 문제 해결 - konlpy, jpype (0) | 2021.10.23 |
---|---|
Python - DataFrame Column 이름 변경 (0) | 2021.09.11 |
Python - 코드 실행시간 확인 (0) | 2021.09.11 |
Pandas - CSV 저장 한글 깨짐 오류 (0) | 2021.08.20 |
Python - 문자열(str)을 Datetime으로 (0) | 2021.08.20 |