영감이 번뜩이는 삶

[파이썬 입문] 오류 발생/처리 본문

Python 도전기

[파이썬 입문] 오류 발생/처리

돌굴러가유피하세유 2022. 12. 28. 21:00
반응형


파이썬을 공부하면서 가장 많이 본게 오류에유 종류도 다양하쥬

다양한 오류 종류

코딩을 할땐 괜찮지만 프로그램 사용자가 이런 메시지를 보면 무슨 생각이 들까유

이게 뭔 개소리야!

그럼 이런 오류 발생 그대로 보여줘서는 안되니 뭔가 처리가 필요하단 뜻이에유
이때 사용하는 구문이 try, except문이에유

try:
    실행할 문장
except [제외할 오류 [as 오류 메시지 변수]]:
    오류 발생시 실행할 문장

 

우선 모든 오류를 하나의 방식으로 처리하는 예시에유

>>> try:
...	1/0
... except:
...	print("오류 발생")

오류 발생


특정 오류에 대해서 처리하고 싶다면 다음 예시를 봐주세유

>>> try:
...	1/0
... except ZeroDivisionError:
...	print("∞")

∞


이때 어떤 오류가 발생했는지 간단히 알려고 한다면 오류 메시지 변수를 사용하면 돼유

>>> try:
...	1/0
... except ZeroDivisionError as e:
...	print("∞")
...	print(e)

∞
division by zero


여러 오류를 한번에 처리하도록 구성할 수도 있어유
except절을 여러번 사용하거나 오류를 묶어주면 돼유

>>> try:
...	a
... except ZeroDivisionError:
...	print("∞")
... except NameError:
...	print("변수 초기화 필요")

변수 초기화 필요
>>> try:
...	a
... except (ZeroDivisionError, NameError) as e:
...	print(e)

name 'a' is not defined


★오류가 발생했을때 그냥 넘어가고 싶다면 except절에 pass를 넣어주면 돼유

try문에선 finally절도 사용해유
일반적으로 오류가 발생하면 프로그램이 중단되기 때문에 그것과 상관없이 무언가 실행해야 한다면 사용해유

>>> try:
...	a #여기서 오류가 발생, 해당 except 실행 후 프로그램 종료...되어야 하지만
...	1/0
... except ZeroDivisionError:
...	print("∞")
... except NameError:
...	print("변수 초기화 필요")
... finally:
...	print("끝") #오류와 무관하게 finally는 무조건 실행

변수 초기화 필요
끝

 

 

반응형

'Python 도전기' 카테고리의 다른 글

[파이썬 입문] 기본 내장 함수  (0) 2022.12.30
[파이썬 입문] 패키지  (0) 2022.12.18
[파이썬 입문] 모듈2  (0) 2022.12.16
[파이썬 입문] 모듈1  (0) 2022.12.14
[파이썬 입문] 클래스2  (0) 2022.12.11
Comments