Skip to content
조회 수 2875 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

파이썬의 IF문 사용시 실행값에서 오류발생시 진행하는 예외처리 방법

 

 

 

 

try
    line = f.readlines()[0]
except:
    line=""
    print('신규문서로 읽어올 자료가 없습니다.')

 

f.readlines()의 변수 배열 0번에 해당하는 값이 없을 경우 

IndexError: list index out of range

 

오류를 발생시키면서 스크립트가 종료되지만 위의 소스는 try에서 오류 발생시 except를 실행시켜서 강제로 line 변수에 공백데이터를 입력한다.

 

파이썬 예외처리 코드 기본구조

try:

    (예외가 일어날 것 같은 코드, 즉 위험한 코드)

except:

    (예외가 있을 때 실행될 코드)

else:

    (예외가 없을 때 실행될 코드)

finally:

    (예외와 상관없이 무조건 실행될 코드)

 

try:
    print('##### 예외가 있을 때 #####')
    number = 3 / 0 # 0으로 나누면 ZeroDivisionError 예외가 발생
    print('다음 코드들...')
except:
    print('except 블록')
else:
    print('else 블록')
finally:
    print('finally 블록')

print()

try:
    print('##### 예외가 없을 때 #####')
    number = 3 / 3
    print('다음 코드들...')
except:
    print('except 블록')
else:
    print('else 블록')
finally:
    print('finally 블록')

파이썬 예외처리 코드 기본구조

try 블록에 있는 코드를 실행하다 예외를 만나게 되면 except 블록으로 직행

예외가 있을 때를 except 블록을, 없을 때는 else 블록을 실행한다.

finally 블록은 예외가 있으나 없으나 실행된다.

(위의 코드를 보면 언제 어느 블록이 실행되는지 한눈에 파악할 수 있습니다.)

 

여러가지 예외(Exception) 처리하기

L = [1, 2, 3]
try:
    #주석을 풀어가면서 하나씩 테스트
    #print(abc) # NameError 발생
    #print(L[7]) # IndexError 발생
    #number = 3 / 0 # ZeroDivisionError 발생
    int('abc') # ValueError 발생
except NameError:
    print('NameError')
except IndexError:
    print('IndexError')
except ZeroDivisionError:
    print('ZeroDivisionError')
except:
    print('모르는 에러!')

여러가지 예외(Exception) 처리하기

예외 종류별로 except문을 사용하여 세밀한 처리를 할 수 있다.

위에서부터 순서대로 예외를 처리하기 때문에 순서가 중요하다.

마지막에 모든 예외를 처리하기 위해서는 except: 또는 except Exception: 을 사용한다.

 

예외의 종류는 아래의 링크를 참고한다.

https://docs.python.org/3/library/exceptions.html#

 

로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
797 [Docs]스프레드시트 구글 스프레드시트 스크립트를 사용하여 지메일로 이메일을 보내기 2023.03.10 2678
796 WindowsTip 응용 프로그램 구성 이 올바르지 않기 때문에 이 응용 프로그램 을 시작 하지 못했습니다 2015.02.06 2687
795 컴퓨터잡담 동영상 자르기 프로그램 file 2014.04.14 2704
794 컴퓨터잡담 크롬 캐시파일 삭제방법(Chrome cache file delete) file 2016.11.27 2708
793 파이썬 파이썬 datetime 모듈로 초간단 날짜 표현하기 2021.09.11 2714
792 Server 아파치 캐시 설정 이후 잦은 아파치 자동멈춤 현상 원인분석 3 2016.03.23 2773
791 Server ECS P43T-AD3, Asus C381GM, Driver(두번째 사용했던 서버 드라이버) file 2016.04.12 2804
790 Server [php.ini]XE 신디케이션 OpenSSL 오류문구 해결방법 file 2016.08.25 2816
789 Server XE PC에서 모바일화면 출력방법 file 2016.09.08 2836
788 컴퓨터잡담 한글입력이 안될때(how to hangul ...) file 2021.01.08 2839
» 컴퓨터잡담 파이썬의 IF문 사용시 실행값에서 오류발생시 진행하는 예외처리 방법 2021.06.15 2875
786 파이썬 파이썬 변수내용 문자열 자르기 특이한 점 2021.09.27 2965
785 Server XE 스케치북 모바일 비회원 댓글쓰기에서 홈페이지 이메일 기입란 삭제하기 2016.04.08 2981
784 컴퓨터잡담 파이썬 Beautifulsoup html의 특정 주소만 가져오기 file 2021.06.14 2986
783 파이썬 파이썬 키움openAPI 보유종목 종목리스트 피라미드 매수주문하기 2021.09.16 3032
782 [Docs]스프레드시트 구글 스프레드시트 쿼리 사용하기 #2 2021.09.26 3052
781 컴퓨터잡담 로블록스 스튜디오 파트속성 2021.09.28 3086
780 Server 아파치 mod_cache mod_disk_cache 알아보기 7 2016.08.18 3096
779 WindowsTip exFAT 이동식 USB 하드 쓰기 금지 문제 해결방법 2015.01.22 3109
778 파이썬 python html tag 제거 경로 금지 문자 제거 2021.10.26 3180
Board Pagination Prev 1 ... 5 6 7 8 9 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소