728x90
반응형
SMALL
try, except문
try:
...
except [발생 오류[as 오류 메시지 변수]]:
...
ex1)
try:
...
except:
...
ex2)
try:
...
except 발생 오류:
...
ex3)
try:
...
except 발생 오류 as 오류 메시지 변수:
...
try .. finally
finally절은 try문 수행 도중 예외 발생 여부에 상관없이 항상 수행
f = open('foo.txt', 'w')
try:
# 무언가를 수행한다.
finally:
f.close()
여러개의 오류처리하기
try:
...
except 발생 오류1:
...
except 발생 오류2:
...
ex1)
try:
a = [1,2]
print(a[3])
4/0
except ZeroDivisionError:
print("0으로 나눌 수 없습니다.")
except IndexError:
print("인덱싱 할 수 없습니다.")
ex2)
try:
a = [1,2]
print(a[3])
4/0
except ZeroDivisionError as e:
print(e)
except IndexError as e:
print(e)
오류 회피하기
try:
f = open("나없는파일", 'r')
except FileNotFoundError:
pass
오류 일부러 발생시키기
raise 명령어를 사용해 오류를 강제로 발생
class Bird:
def fly(self):
raise NotImplementedError // 꼭 작성해야 하는 부분이 구현되지 않았을 경우 일부러 오류를 일으키기 위해 사용
예외 만들기
class MyError(Exception):
def say_nick(nick):
if nick == '바보':
raise MyError()
print(nick)
def __str__(self):
return "허용되지 않는 별명입니다."
/* 실행 */
try:
say_nick("천사")
say_nick("바보")
except MyError as e:
print(e)
728x90
반응형
LIST
'Program > Python' 카테고리의 다른 글
Python 라이브러리 (0) | 2020.09.09 |
---|---|
Python 내장함수 (0) | 2020.09.09 |
Python 패키지 (0) | 2020.09.09 |
Python 모듈 (0) | 2020.09.08 |
Python 클래스 (0) | 2020.09.08 |