Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python 프로그램에서 시도 및 제외

<시간/>

이 튜토리얼에서는 try제외 파이썬의. Python에는 오류 및 예외 처리라는 개념이 있습니다.

키워드 시도제외 오류 및 예외 처리에 사용됩니다.

기본적으로 Python에서 두 가지 유형의 오류를 찾을 수 있습니다. 그들은 -

  • 구문 오류 - Python은 프로그램의 한 줄의 코드를 이해하지 못할 때 이러한 유형의 오류를 제공합니다.

  • 예외 오류 - 프로그램 실행 중에 감지된 오류. 예:- ZeroDivisionError, ValueError 등,

구문 오류를 막을 수는 없습니다. 그러나 try-except를 사용하여 프로그램에서 예외 오류가 발생하는 경우 이를 알릴 수 있습니다. Python에서 가장 흔한 예외 오류를 살펴보겠습니다.

  • ZeroDivisionError − 어떤 수를 0으로 나누려고 할 때 발생합니다.

  • 값 오류 − 함수에 부적절한 값을 전달할 때 발생합니다.

  • 색인 오류 − 사용할 수 없는 인덱스에 액세스하려고 할 때

  • 키 오류 − 사전에 없는 키에 액세스하려고 할 때

  • 가져오기 오류 − 존재하지 않는 모듈을 가져오려고 하는 경우.

  • IO 오류 − 파이썬이 파일을 열 수 없을 때 발생합니다.

  • 키보드 인터럽트 − 사용자가 불필요한 키를 눌렀을 때 발생합니다.

Python에는 예외적인 오류가 많이 있습니다. try-except를 사용하면 이러한 문제를 쉽게 처리할 수 있습니다. try-except 구문을 살펴보겠습니다. 먼저.

# try-except syntax
try:
   # statement
   # statement
   # ...
except:
   # statement
   # statement
   # ...

Python이 try-except를 실행하는 방법 블록 코드? 차근차근 살펴보겠습니다.

  • 먼저 Python은 try 내부의 코드를 실행합니다. 차단합니다.

  • 예외 오류가 없는 경우 코드에서 제외 블록이 실행되지 않습니다.

  • 예외 오류가 있는 경우 코드에서 발생한 다음 시도 차단을 건너뛰고 제외합니다. 블록 코드가 실행됩니다**.

  • 예외 오류가 있는 경우 발생하고 제외 블록이 처리할 수 없으면 해당 예외 오류가 발생합니다.

  • 여러 제외를 가질 수 있습니다. 하나의 try 블록에 대한 명령문입니다.

예시

예외 오류가 없는 예를 보겠습니다.

# No exception error
try:
   arr = [1, 2, 3, 4, 5]
   # accesing an item from array with a valid index
   two = arr[1]
   print(f"We didn't get any errors {two}")
except IndexError:
   print("The given index is not valid")

출력

위의 프로그램을 실행하면 다음과 같은 결과를 얻을 수 있습니다.

We didn't get any errors 2

예외 오류가 발생하지 않았습니다. 따라서 try 블록의 코드가 실행됩니다.

예시

잘못된 인덱스가 있는 동일한 예를 살펴보겠습니다.

# No exception error
try:
   arr = [1, 2, 3, 4, 5]
   # accesing an item from array with a invalid index
   six = arr[6]
   print(f"We didn't get any errors {six}")
except IndexError:
   print("The given index is not valid")

출력

위의 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

The given index is not valid

색인 오류가 발생했습니다. 시도에서 차단하다. 따라서 제외의 코드는 블록이 실행됩니다.

예시

예외가 예외 처리를 할 수 없다면 어떻게 되는지 봅시다.

# No exception error
try:
   arr = [1, 2, 3, 4, 5]
   # accesing an item from array with a invalid index
   six = arr[6]
   print(f"We didn't get any errors {six}")
except ValueError:
   print("The given index is not valid")

출력

위의 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다.

---------------------------------------------------------------------------
IndexError                               Traceback (most recent call last)
<ipython-input-11-fe3737d0615b> in <module>
      3    arr = [1, 2, 3, 4, 5]
      4    # accesing an item from array with a invalid index
----> 5    six = arr[6]
      6 print(f"We didn't get any errors {six}")
      7 except ValueError:
IndexError: list index out of range

오류가 발생했습니다. ValueError 가 발생했습니다. 예외 블록에서. 하지만 IndexError가 발생했습니다. 제외에 의해 처리되지 않은 차단하다. 그래서 오류가 발생했습니다. 예외 블록에 예외 오류를 지정할 때 주의하십시오.

결론

튜토리얼과 관련하여 질문이 있는 경우 댓글 섹션에 언급하세요.