-
Python 예외 처리 (Exception Handling) 🐍🛠️⚠️프로그래밍/Python 2025. 3. 11. 23:05반응형

Python에서는 프로그램 실행 중 발생할 수 있는 예외(Exception)를 처리하여 오류를 방지할 수 있습니다. 이번 포스팅에서는 try-except 구문을 활용한 예외 처리 방법을 쉽게 설명하겠습니다! 🚀
1. 예외란 무엇인가?
프로그램을 실행하다 보면 오류(Error)가 발생할 수 있습니다. Python에서는 이런 오류를 예외(Exception)라고 하며, 예외를 처리하지 않으면 프로그램이 중단됩니다.
📌 예외 발생 예시
print(10 / 0) # ZeroDivisionError 발생✅ 0으로 나누면 ZeroDivisionError가 발생하여 프로그램이 중단됩니다.
2. try-except 구문 (예외 처리 기본)
예외가 발생해도 프로그램이 중단되지 않도록 try-except 구문을 사용합니다.
📌 기본 예외 처리 구조
try: 실행할 코드 except 예외종류: 예외 발생 시 실행할 코드📌 예제: ZeroDivisionError 처리
try: print(10 / 0) except ZeroDivisionError: print("0으로 나눌 수 없습니다!")✅ 예외가 발생해도 프로그램이 멈추지 않고 "0으로 나눌 수 없습니다!"가 출력됩니다.
3. 여러 개의 예외 처리
하나의 try 블록에서 여러 개의 예외를 처리할 수 있습니다.
📌 여러 예외 처리 예제
try: num = int(input("숫자를 입력하세요: ")) print(10 / num) except ZeroDivisionError: print("0으로 나눌 수 없습니다!") except ValueError: print("숫자가 아닌 값을 입력했습니다!")✅ 입력값이 0이면 ZeroDivisionError, 숫자가 아니면 ValueError를 처리합니다.
4. 예외 메시지 확인 (as e)
예외 메시지를 출력하고 싶다면 as e를 사용할 수 있습니다.
📌 예외 메시지 출력하기
try: print(10 / 0) except ZeroDivisionError as e: print(f"오류 발생: {e}")✅ ZeroDivisionError: division by zero와 같은 메시지가 출력됩니다.
5. finally 블록 - 항상 실행되는 코드
finally 블록은 예외 발생 여부와 관계없이 항상 실행되는 코드를 정의할 때 사용합니다.
📌 finally 블록 예제
try: file = open("test.txt", "r") data = file.read() except FileNotFoundError: print("파일을 찾을 수 없습니다!") finally: print("프로그램을 종료합니다.")✅ 파일이 없어도 finally 블록은 실행됩니다.
6. raise 문 - 강제로 예외 발생시키기
특정 조건에서 강제로 예외를 발생시키고 싶다면 raise를 사용할 수 있습니다.
📌 예제: 강제 예외 발생
def check_age(age): if age < 0: raise ValueError("나이는 0 이상이어야 합니다.") print(f"입력한 나이: {age}") try: check_age(-5) except ValueError as e: print(f"예외 발생: {e}")✅ raise를 이용해 음수 나이가 입력되면 ValueError를 발생시킵니다.
7. 연습문제: 직접 실습해보기! 🎯
# 1. 숫자를 입력받아 나누기 연산을 수행하는 프로그램을 작성하세요. # 0을 입력하면 "0으로 나눌 수 없습니다!" 메시지를 출력하도록 만드세요. try: num = int(input("나눌 숫자를 입력하세요: ")) result = 10 / num print("결과:", result) except ZeroDivisionError: print("0으로 나눌 수 없습니다!") except ValueError: print("올바른 숫자를 입력하세요!")# 2. 파일을 읽는 코드에서, 파일이 없을 경우 "파일이 없습니다!" 메시지를 출력하도록 만드세요. try: with open("data.txt", "r") as file: content = file.read() print(content) except FileNotFoundError: print("파일이 없습니다!")
마무리 🎯
오늘은 Python의 예외 처리(Exception Handling)에 대해 배웠습니다! 🏆
- try-except를 활용하여 예외를 처리하는 방법
- 여러 개의 예외를 처리하는 방법
- finally 블록을 활용하여 항상 실행되는 코드 작성
- raise를 이용한 예외 강제 발생
💡 다음 포스팅에서는 '모듈과 패키지'를 다룰 예정입니다! 🚀
✍️ 질문이나 궁금한 점이 있다면 댓글로 남겨주세요! 😊
'프로그래밍 > Python' 카테고리의 다른 글
Python의 파일 및 디렉터리 관리 🗂️ (0) 2025.03.19 Python 모듈과 패키지 🛠️📦 (0) 2025.03.12 Python 파일 입출력(File I/O) 🐍📝✨ (0) 2025.03.10 Python 클래스(Class)와 객체(Object) 🐍✨ (4) 2025.03.09 Python 함수(Function) 🐍✨ (0) 2025.03.06