Python에서 예외 발생

Rana Hasnain Khan 2024년2월15일
  1. Python에서 예외 발생
  2. Python의 try
  3. Python의 raise 키워드
  4. Python의 else
Python에서 예외 발생

Python에서 예외를 발생시키는 다양한 방법을 소개합니다.

Python에서 예외 발생

Python 프로그램을 작성하고 실행할 때 프로그램에 무언가가 누락되었거나 코드에 잘못된 것이 있으면 출력이나 오류가 발생합니다. 예외는 Python 프로그래밍 언어와 비슷합니다.

파이썬에는 우리 프로그램이 뭔가 잘못하고 있을 때 발생하는 많은 내장 예외가 있습니다. 프로그램을 실행하려고 할 때 예외가 발생하면 프로그램을 중지하고 프로그램이 코드를 실행하려고 할 때 발생한 예외를 표시합니다.

이 기사는 몇 가지 간단한 프로그램을 수행하여 try, exceptfinally 문을 사용하여 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("")

출력:

try 문을 사용하여 파이썬에서 예외 발생

위의 예는 이 프로그램이 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 키워드를 사용하여 파이썬에서 예외 발생

위의 예는 음수를 입력하면 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)

출력:

else 문을 사용하여 파이썬에서 예외 발생

위의 예에서 알 수 있듯이 입력한 숫자가 짝수이면 그 숫자의 역수를 출력하고, 짝수가 아니면 위의 결과와 같이 예외를 발생시킨다.

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

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

관련 문장 - Python Exception