반응형

(PYTHON)파이썬 예외 처리

 

예외 상황을 처리하는 문법

try :
	명령문
except :
	예외상황(에러) 발생 시 실행되는 명령들
finally :	#생략가능
	예외가 발생하든 안하든 실행되는 명령들

 

예외 처리 예제

try :
	age = int(input("나이 입력 : "))	#input 받은문자를 숫자로 변경
	print("입력한 나이는 %d 입니다." % age)	#예외상황 발생하지 않을 때 출력
except :
	print("예외상황 발생")	#예외상황 발생 시 출력
finally :
	print("예외상황 발생하던 안하던 실행")	#무조건 출력

나이 입력 : 20살
예외상황 발생	#"20살"에 문자가 있어 예외상황 발생
예외상황 발생하던 안하던 실행
>>> 
나이 입력 : 20
입력한 나이는 20 입니다.	#예외상황이 발생하지 않음
예외상황 발생하던 안하던 실행

 

 

예외상황(에러상황)에 따른 예외처리 문법

try :
	명령문
except 예외상황1 :
	예외상황1(에러코드) 발생할 경우 명령문
except 예외상황2 :
	예외상황2(에러코드) 발생할 경우 명령문

 

 

여러가지 예외상황(에러)에 따른 예외처리 예제

try :
    입력값 = input("100을 n으로 나눈 목구하기, 정수 n입력: ")
    n = int(입력값)
    m = 100 / n
    print("100을 %d로 나눈 몫: %d" % (n,m))
    print("입력한 숫자의 두번째 자리 숫자: %d" % 입력값[1])
except ValueError :
	print("예외상황 발생: 정수 int 변환 오류")
except ZeroDivisionError :
	print("예외상황 발생: 0으로 나눈 오류")
except IndexError :
	print("예외상황 발생: 인덱스 범위 오류")

100을 n으로 나눈 목구하기, 정수 n입력: 3.14	#int형 변환 시 오류
예외상황 발생: 정수 int 변환 오류
>>> 
100을 n으로 나눈 목구하기, 정수 n입력: 0	#100을 0으로 나눠 오류
예외상황 발생: 0으로 나눈 오류
>>>
100을 n으로 나눈 목구하기, 정수 n입력: 4	#정상 출력 중 한자리수라 "입력값[1]"에서 오류
100을 4로 나눈 몫: 25
예외상황 발생: 인덱스 범위 오류	#한자리수라 "입력값[1]"이 인덱스에 존재하지 않음

 

파일이 존재하지 않을 때 예외처리

try :
    파일읽기 = open("D:\\없는파일.txt", "r")	#존재하지 않는 파일 읽기
    for 임의변수 in 파일읽기.readlines() :
        print(임의변수, end="")
    파일읽기.close()
except FileNotFoundError :
	print("예외상황 발생: 파일이 존재하지 않음")
finally :
    print("무조건 실행")

예외상황 발생: 파일이 존재하지 않음
무조건 실행

 

 

(PYTHON)파이썬 전체보기

 

'(PYTHON)파이썬' 카테고리의 글 목록

전산 관련 경험을 기록 하는 곳

reddb.tistory.com

 

반응형

'(PYTHON)파이썬' 카테고리의 다른 글

(PYTHON)파이썬 import 모듈  (0) 2020.08.14
(PYTHON)파이썬 파일 읽기 쓰기  (0) 2020.08.11
(PYTHON)파이썬 딕셔너리 Dictionary  (0) 2020.08.09