Skip to content
조회 수 2778 추천 수 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
번호 분류 제목 날짜 조회 수
877 WindowsTip Windows XP 부팅속도 개선 팁 file 2015.01.24 1412
876 컴퓨터잡담 파이썬으로 키움증권 open api 사용해보기 file 2021.08.24 1415
875 컴퓨터잡담 파이썬 Beautifulsoup 웹크롤링 차단시 해결방법 2021.07.23 1418
874 컴퓨터잡담 파이썬 네이버라인 메시지 보내기 2021.08.22 1426
873 Server XE성능 캐시활용으로 속도 100배 개선하기(Varnish 캐시서버 + XE(+패치) + nginx(혹은 아파치) / Wincache) file 2016.03.04 1440
872 Server XE 업데이트 후 모듈업데이트가 안될때 참고 file 2015.03.13 1440
871 WindowsTip Winpe 4in1 2015.03.10 1458
870 컴퓨터잡담 파이썬 네이버 증권 주식 현재가 가져오기 2021.09.06 1460
869 컴퓨터잡담 파이썬 에러 해결방법 모음 2021.07.19 1501
868 컴퓨터잡담 [python] 윈도우 파이썬 모듈 설치 방법 (특정프로그램 설치 없이 기본프로그램 활용) 2021.09.02 1504
867 WindowsTip 알리익스프레스에서 산 ralink 802.n usb driver file 2015.01.09 1521
866 컴퓨터잡담 파이썬 셀레니움으로 네이버 증권의 종목 검색하여 특정항목 클릭하기 2021.05.30 1526
865 Server MySQL 5.6 my.cnf 글로벌 변수인지 세션변수인지 확인 2016.03.24 1527
864 WindowsTip 복구콘솔 USB 만들기 2015.01.09 1539
863 WindowsTip autohotkey regwrite ipv6 제거툴 file 2014.12.27 1540
862 컴퓨터잡담 무선 공유기 선택시 중요한 4가지 2015.09.07 1543
861 WindowsTip 윈도우 XP에서 exFAT 인식 패치방법 file 2015.01.14 1557
860 컴퓨터잡담 파이썬 pyautogui 명령어 2021.06.06 1559
859 컴퓨터잡담 파이썬 한우정액 정보 스프레드로 추출하기 file 2021.06.05 1571
858 컴퓨터잡담 Python 파일을 exe파일로 컴파일하기 2021.06.16 1575
Board Pagination Prev 1 2 3 4 5 ... 46 Next
/ 46

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소