Chapter 06 예외처리


My Image

 

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  )