728x90
예외 처리는 프로그램 실행 중 발생할 수 있는 오류 상황에 대응하는 방법으로, 프로그램의 안정성과 신뢰성을 높이는 데 필수적입니다. 이번 장에서는 예외 처리 기법을 활용하여 견고한 프로그램을 만드는 방법을 학습합니다.
● 예외 처리를 통한 오류 방지
사용자 입력, 파일 처리, 네트워크 통신 등 다양한 상황에서 예외 처리를 통해 예기치 않은 종료를 방지할 수 있습니다.
try:
x = int(input("숫자를 입력하세요: "))
print(10 / x)
except ValueError:
print("유효한 숫자를 입력하세요.")
except ZeroDivisionError:
print("0으로 나눌 수 없습니다.")
● 예외 처리 패턴
try-except
: 일반적인 예외 처리try-except-finally
: 예외 여부와 관계없이 마지막에 항상 실행되는 코드try-except-else
: 예외가 없을 경우 실행되는 코드
try:
print("실행")
except:
print("오류 발생")
else:
print("예외 없음")
finally:
print("항상 실행")
● 사용자 정의 예외 처리
필요한 경우 직접 예외 클래스를 정의하여 세분화된 예외 제어가 가능합니다.
class CustomError(Exception):
pass
def check_value(x):
if x < 0:
raise CustomError("음수는 허용되지 않음")
try:
check_value(-5)
except CustomError as e:
print("사용자 정의 예외:", e)
● 예외 로깅
오류를 무시하지 말고, 로그를 남겨 추적 가능하도록 하는 것이 좋습니다.
import logging
logging.basicConfig(filename='error.log', level=logging.ERROR)
try:
1 / 0
except ZeroDivisionError as e:
logging.error("오류 발생: %s", e)
● 마무리
이번 장에서는 예외 처리 구조와 사용자 정의 예외, 로깅을 통한 추적 등 예외 활용 기법을 학습했습니다. 실전 프로그램에서는 예외 처리를 통해 오류 상황을 효과적으로 통제하고, 사용자 경험을 개선하는 것이 중요합니다. 다음 장에서는 반복 구조와 조건 제어를 조합한 실전 문제를 풀어보겠습니다.
728x90
'프로그래밍언어 > 파이썬[초급]' 카테고리의 다른 글
[파이썬][초급] Chapter49. 텍스트 기반 미니 게임 만들기 (0) | 2025.05.17 |
---|---|
[파이썬][초급] Chapter48. 조건문과 반복문 실전 예제 (0) | 2025.05.17 |
[파이썬][초급] Chapter46. 객체 직렬화와 파일 저장 (0) | 2025.05.17 |
[파이썬][초급] Chapter45. 클래스의 특수 메서드 (0) | 2025.05.17 |
[파이썬][초급] Chapter44. 캡슐화와 접근 제어자 (0) | 2025.05.17 |