1.예외 처리
- 오류가 발생되었을 때 별도의 처리를 하거나 무시하고 프로그램을 실행하는 것
- 오류가 발생될 것으로 예상되는 문장을 try 블록에 코딩하고, try블록에 코딩된 내용을 실행하다가 오류가 발생하면 더이상 try블록의 내용을 실행하지 않고 해당 오류의 except 블롣에 코딩된 내용을 실행
- 파이썬은 발생할 수 있는 모든 문제를 예외 클래스로 만들어 놓음
1-1. try except 사용하기
try:
오류가 발생할 것으로 예상되는 문장
...
...
except:
오류가 발생했을 경우 실행할 문장
...
1-2. 특정 예외만 처리하기
try:
오류가 발생할 것으로 예상되는 문장
...
...
except 예외이름:
오류가 발생했을 경우 실행할 문장
...
1-3. 예외 에러 메세지 받기
try:
오류가 발생할 것으로 예상되는 문장
...
...
except 예외이름 as 변수:
오류가 발생했을 경우 실행할 문장
...
1-4. 예외가 발생하지 않았을 경우 처리하기
try:
오류가 발생할 것으로 예상되는 문장
...
...
except 예외이름 as 변수:
오류가 발생했을 경우 실행할 문장
...
else:
오류가 발생하지 않았을 경우 실행할 문장
1-5. 예외와 관계없이 코드 실행하기
try:
오류가 발생할 것으로 예상되는 문장
...
...
except 예외이름 as 변수:
오류가 발생했을 경우 실행할 문장
...
else:
오류가 발생하지 않았을 경우 실행할 문장
finally:
예외 발생 여부와 관계없이 항상 실행할 코드
예외처리 문제
- 데이터를 입력하면 정렬하여 오름차순 출력하는 프로그램을 작성해보자.(단, 숫자와 문자를 섞어 입력하면 숫자 + 문자 형식으로 정렬, 000을 입력하면 정렬을 시작함)
- 데이터를 입력하세요: abc
- 데이터를 입력하세요: 123
- 데이터를 입력하세요: 1
- 데이터를 입력하세요: bbb
- 데이터를 입력하세요: 000
- 결과 [1, 123, 'abc', 'bbb']
2. 예외 발생 시키기
2-1 함수로 받아 예외 발생시키기
- 파이썬 함수는 STACK으로 쌓이기 때문에 func1() 에 예외처리를 하여도 잘 동작한다.