본문 바로가기

Python 🎧

[python] 파이썬 예외처리 - try/except/else/finally/raise

파이썬에서의 예외처리 방식이 무엇일까 ?

넘나 쉽다 

 

🥨 예외처리 기본 예제 

# try : 예외가 일어났는지
# except : 예외가 일어났을때 실행
# else : 예외가 일어나지 않을때 실행
# finally : 무조건 실행

try :
    file = open("a.txt")
    a_dic = {"key" : "value"}
    print(a_dic["keyyyyy"])
# 파일이 없는 에러 발생할때 실행
except FileNotFoundError :
    file = open("a.txt","w")
    file.write("somthing")
# Key 가 존재하지 않을 때 실행
except KeyError as err_msg:
    print(f"no key !:{err_msg}")
# 예외 발생하지 않을 때 실행
else :
    content = file.read()
    print(content)
# 무조건 실행
finally:
    file.close()
    print("끝!")

 

🥨 실행 결과 

 

🥨 직접 예외 처리 

# 사용자가 만드는 예외

height = float(input("키(m) :"))
weight = int(input("무게(kg)"))

if height > 3 :
    # 사용자 예외 생성
    raise ValueError("사람키는 3를 넘지 못합니다.")

 

🥨 실행 결과