Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Spring #Java #Spring Boot
- java
- 9020
- kakaocloudschool
- Spring #Java #Spring Boot #싱글톤
- kakaocloud
- 코딩테스트
- 1110
- SpringTokenizer
- sequelize
- boj
- 15552
- Spring #Java #Spring Boot #@BeforeEach #@AfterEach
- Java #오븐시계 #백준
- 카카오클라우드스쿨
- 2447
- Spring #Spring Boot #Java
- 알고리즘
- node
- 24479
- 카카오 클라우드 스쿨
- Java #코딩테스트
- Java #백준 #코딩테스트
- Spring
- 11053
- 파이썬
- python
- 11054
- 백준
- 7568
Archives
- Today
- Total
YoungSoo
Python - 예외처리 본문
이번에는 예외처리에 대해 공부하려고 한다.
예외처리는 프로그램을 만들다보면 많은 오류가 발생하는데 오류로 인해 프로그램이 잘못 작동하는 것을 막기 위해 해준다.
예외처리
- try, except문
try:
...
except [발생 오류[as 오류 메시지 변수]]:
...
// 0으로 값을 못 나눔.
try:
4 / 0
except ZeroDivisionError as e:
print(e)
>> division by zero
- try .. finally
f = open('foo.txt', 'w')
try:
# 무언가를 수행한다.
finally:
f.close()
- try문에 else 절 사용하기
try:
...
except [발생 오류[as 오류 메시지 변수]]:
...
else: # 오류가 없을 경우에만 수행된다.
...
- 오류 회피하기
try:
f = open("나없는파일", 'r')
except FileNotFoundError:
pass
- 오류 일부러 발생시키기
class Bird:
def fly(self):
raise NotImplementedError
//
class Eagle(Bird):
pass
eagle = Eagle()
eagle.fly()
- Eagle는 Bird 클래스를 상속 받는다. 그런데 Eagle 클래스에서 fly 함수를 구현하지 않았기에 Bird 클래스의 함수가 호출된다. 그리고 raise 문에 의해 에러가 발생한다.
- class Bird: def fly(self): raise NotImplementedError // class Eagle(Bird): pass eagle = Eagle() eagle.fly()
- 예외 만들기
class MyError(Exception):
def __str__(self):
return "허용되지 않는 별명입니다."
def say_nick(nick):
if nick == '바보':
raise MyError()
print(nick)
'BE > Python' 카테고리의 다른 글
Python - 주요 내장 함수 및 라이브러리 (0) | 2022.12.28 |
---|---|
Python - 패키지 (0) | 2022.12.21 |
Python - 모듈 (0) | 2022.12.19 |
Python - 클래스 (0) | 2022.12.17 |
Python - 파일 읽고 쓰기 (0) | 2022.12.16 |