Chapter 06 예외처리
1. 구문오류와 예외
구문오류(Syntax Error): 실행전에 발생하는 오류
예외(Exception), 런타임 오류(Runtime Error): 프로그램 실행중에 발행하는 오류
예외 처리(Exception Handling)
1 ) 조건문 사용
2 ) try 사용
try:
예외가 발생할 가능성이 있는 코드
except:
예외가 발생했을때 실행할 코드
else: # Python이나 ruby에만 사용가능한 구문
finally: #return 이나 break으로 함수가 끝나도 실행됨
키워드 pass: 아무것도 넣지 않으면 구문오류가 발생하기 때문에 사용하는 코드
2. 예외 고급
예외 객체(Exception object)
ex )
try:
예외가 발생할 가능성이 있는 구문
except 예외의 종류 as 예외 객체를 활용할 변수 이름:
예외가 발생했을때 실행할 구문
try:
number_input_a='aaaa'
print("circle area", 3.14*number_input_a*number_input_a)
except Exception as exception:
print("type(exception): ", type(exception))
print("exception: " ,exception)
type(exception): <class 'TypeError'>
exception: can't multiply sequence by non-int of type 'float'
PS D:\■■■■_fFF■\■\p■■h■n>
예외 구문
try:
예외가 발생할 가능성이 있는 구문
except 예외의 종류A
예외A가 발생했을때 실행할 구문
except 예외의 종류 B
예외B가 발생했을때 실행할 구문
except 예외의 종류 C
예외C가 발생했을때 실행할 구문
모든 예외 잡기: Exception사용
raise 구문: 구현되지 않은 부분에 일부러 예외를 발생시킬때 사용.
Ex ) raise 예외객체이름
기본 미션 및 선택 미션
============================
기본 미션: 구문 오류와 예외의 차이 설명하기(P291 1번 문제)
선택 미션: p293 3번 문제 풀기
============================
기본 미션: 구문 오류와 예외의 차이 설명하기(p291 1번 문제)
1. 구문오류와 예외
구분 오류(Syntax Error): 실행전에 발생하는 오류
예외(Exception), 런타임 오류(Runtime Error): 프로그램 실행중에 발생하는 오류
output = 10 + “개” # 1
int(“こんばんは”) # 2
cursor.close) # 3
[1, 2, 3, 4, 5][10] # 4
① 구문오류 ② 예외
# 1 ② → ( Type Error | ふかのう(不可能) )
# 2 ② → ( Value Error | sur -> int ふかのう(不可能) )
# 3 ① → ( Syntax Error )
# 4 ② → ( Index Error )