Python에서 예외 발생
Python에서 예외를 발생시키는 다양한 방법을 소개합니다.
Python에서 예외 발생
Python 프로그램을 작성하고 실행할 때 프로그램에 무언가가 누락되었거나 코드에 잘못된 것이 있으면 출력이나 오류가 발생합니다. 예외는 Python 프로그래밍 언어와 비슷합니다.
파이썬에는 우리 프로그램이 뭔가 잘못하고 있을 때 발생하는 많은 내장 예외가 있습니다. 프로그램을 실행하려고 할 때 예외가 발생하면 프로그램을 중지하고 프로그램이 코드를 실행하려고 할 때 발생한 예외를 표시합니다.
이 기사는 몇 가지 간단한 프로그램을 수행하여 try
, except
및 finally
문을 사용하여 Python 프로그램에서 예외를 처리하는 방법을 보여줍니다.
Python의 try
문
Python에서는 예외 가능성을 최소화하기 위해 코드 내 try
문을 사용하여 예외를 처리할 수 있습니다. try
절에는 예외를 생성할 수 있는 중요한 작업이 포함되어 있습니다.
except
절에는 예외를 해결하는 코드가 포함되어 있습니다.
이제 예제를 살펴보고 사용자가 잘못된 값을 입력한 경우 예외를 발생시키기 위해 try
문을 사용하겠습니다.
# python
Any_List = [2, "Husnain", 4, 6, 8]
for value in Any_List:
try:
print("The value is", value)
raci = 1 / int(value)
print("The reciprocal of", value, "is", raci)
print("")
except:
print("Oops! There is a string in this list.")
print("The reciprocal of", value, "cannot be done!")
print("")
출력:
위의 예는 이 프로그램이 Any_List
의 항목을 살펴보고 예외가 없으면 except
블록을 건너뛰고 Any_List
의 마지막 요소에 도달할 때까지 코드가 원활하게 실행됨을 보여줍니다. .
그러나 Any_List
의 모든 요소를 살펴보는 동안 예외가 발생하면 except
블록이 실행되어 위의 결과와 같이 값이 출력됩니다.
이제 세 가지 다른 예외
사례를 만드는 예를 살펴보겠습니다. 위 프로그램에서 except
블록이 하나만 있는 try
문을 언급합니다.
그러나 이 프로그램에서는 절을 선택할 수 있는 더 많은 옵션을 제공하는 세 개의 except
블록을 사용합니다.
# python
VAR0 = 10
try:
VAR1 = int("Husnain")
VAR2 = int(56)
result = (int(VAR1) * int(VAR2)) / (VAR0 * int(VAR2))
except ValueError as ve:
print(ve)
exit()
except TypeError as te:
print(te)
exit()
except:
print("Unexpected Error!")
exit()
print(result)
출력:
이것은 세 개의 예외 블록을 포함하는 프로그램입니다. 이제 Python에서 예외를 발생시키는 데 사용할 수 있는 다른 방법인 raise
를 살펴보겠습니다.
Python의 raise
키워드
Python 프로그래밍에서 런타임 동안 코드에 일부 오류가 있으면 예외가 발생합니다. raise
키워드를 사용하여 수동으로 예외를 발생시킬 수 있습니다.
또한 예외에 대한 추가 정보와 프로그램이 이를 발생시킨 이유를 제공하기 위해 예외에 값을 전달할 수도 있습니다.
raise
키워드를 사용하여 수동으로 오류를 발생시키는 예를 들어보겠습니다.
# python
try:
num = int(-23)
if num <= 0:
raise ValueError("entred number is not positive")
except ValueError as ve:
print(ve)
출력:
위의 예는 음수를 입력하면 raise
키워드를 통해 설정한 예외가 발생함을 보여줍니다.
이제 else
절을 사용하여 수동으로 예외를 발생시키는 또 다른 예를 살펴보겠습니다.
Python의 else
절
어떤 상황에서는 try
문에서 오류 없이 프로그램을 실행하려는 경우 else
문을 사용하여 프로그램 처리를 완료합니다.
# python
try:
number = int(21)
assert number % 2 == 0
except:
print("It is not a even number!")
else:
reciprocal = 1 / number
print(reciprocal)
출력:
위의 예에서 알 수 있듯이 입력한 숫자가 짝수이면 그 숫자의 역수를 출력하고, 짝수가 아니면 위의 결과와 같이 예외를 발생시킨다.
Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.
LinkedIn