-
예외처리(exception handling)
프로그램 개발 시 예상하지 못한 상황이 발생했을 때 적절한 조치를 취해주는 것
예외의 종류
예외 내용 IndexError 리스트의 인덱스 범위를 넘어갈 때 NameError 존재하지 않는 변수를 호출할 때 ZeorDivisionError 0으로 숫자를 나눌 때 ValueError 변환할 수 없는 문자나 숫자를 변환할 때 FileNotFoundError 존재하지 않는 파일을 호출할 때 try-except 문
try: 예외 발생 가능 코드 except 예외 타입: 예외 발생 시 실행되는 코드
try-except-else 문
try: 예외 발생 가능 코드 except 예외 타입: 예외 발생시 실행되는 코드 else: 예외가 발생하지 않을때 실행되는 코드
try-except-finally 문
try: 예외 발생 가능 코드 except 예외 타입: 예외 발생시 실행되는 코드 finally: 예외 발생 여부와 상관없이 실행되는 코드
raise 문
– try-except 문과 달리 필요할 때 예외를 발생시키는 코드
raise 예외 타입(예외 정보)
while True: value = input("변환할 정수값을 입력해 주세요: ") for digit in value: if digit not in "0123456789": raise ValueError("숫자값을 입력하지 않았습니다.") print("정수값으로 변환된 숫자 -", int(value))
assert문
– 미리 알아야 할 예외 정보가 조건을 만족하지 않을 경우 예외를 발생시키는 코드
assert 예외 조건
def get_binary_nmubmer(decimal_number): assert isinstance(decimal_number, int) return bin(decimal_number) print(get_binary_nmubmer(10)) print(get_binary_nmubmer("10"))
'개발 > Python' 카테고리의 다른 글
Python_ 파일의 전체 글자 수, 전체 단어 수, 전체 라인 수 읽어오기 (0) 2021.11.10 Python_ 파일 읽기 (readlines()) (0) 2021.11.10 Python_ 파이썬 패키지, 디렉토리 구성하기 (0) 2021.11.10 Python_ 파이썬 표준 모듈 (math, random, os, sys, datetime, time, urllib), 외부 모듈 (0) 2021.11.10 Python_ 모듈과 네임스페이스 (0) 2021.11.10 댓글 (비로그인 댓글 허용하지 않습니다.)