어설션 오류
어설션은 사용자가 다음을 사용하여 조건을 참으로 선언하는 코드를 작성하는 동안 사용되는 프로그래밍 개념입니다. 주장하다 모듈을 실행하기 전의 명령문입니다. 조건이 다음과 같은 경우 진실 , 컨트롤은 단순히 다음 코드 줄로 이동합니다. 만약 그렇다면 거짓 프로그램이 실행을 멈추고 반환됩니다. 어설션오류 예외.
기능 주장하다 명령문은 구현되는 언어에 관계없이 동일하며 언어 독립적인 개념이며 프로그래밍 언어에 따라 구문만 다릅니다.

주장의 구문:
주장하다 조건, error_message(선택)
예 1: error_message에 대한 어설션 오류.
파이썬3
# AssertionError with error_message.> x>=> 1> y>=> 0> assert> y !>=> 0>,>'Invalid Operation'> # denominator can't be 0> print>(x>/> y)> |
>
피즈버즈 자바
>
출력 :
Traceback (most recent call last): File '/home/bafc2f900d9791144fbf59f477cd4059.py', line 4, in assert y!=0, 'Invalid Operation' # denominator can't be 0 AssertionError: Invalid Operation>
Python의 기본 예외 처리기는 프로그래머가 작성한 error_message를 인쇄하거나 메시지 없이 오류를 처리합니다.
두 가지 방법 모두 유효합니다.
AssertionError 예외 처리:
어설션오류 Exception 클래스에서 상속됩니다. 이 예외가 발생하고 AssertionError가 발생하면 사용자가 처리하거나 기본 예외 처리기를 처리하는 두 가지 방법이 있습니다.
예제 1에서는 기본 예외 처리기가 작업을 수행하는 방법을 살펴보았습니다.
이제 수동으로 처리하는 방법을 살펴보겠습니다.
실시예 2
파이썬3
# Handling it manually> try>:> >x>=> 1> >y>=> 0> >assert> y !>=> 0>,>'Invalid Operation'> >print>(x>/> y)> # the errror_message provided by the user gets printed> except> AssertionError as msg:> >print>(msg)> |
c 문자열 배열
>
>
출력 :
Invalid Operation>
실용적인 적용.
예제 3: 프로그램 테스트.
파이썬3
# Roots of a quadratic equation> import> math> def> ShridharAcharya(a, b, c):> >try>:> >assert> a !>=> 0>,>'Not a quadratic equation as coefficient of x ^ 2 can't be 0'> >D>=> (b>*> b>-> 4> *> a>*>c)> >assert> D>>=> 0>,>'Roots are imaginary'> >r1>=> (>->b>+> math.sqrt(D))>/>(>2> *> a)> >r2>=> (>->b>-> math.sqrt(D))>/>(>2> *> a)> >print>(>'Roots of the quadratic equation are :'>, r1, '', r2)> >except> AssertionError as msg:> >print>(msg)> ShridharAcharya(>->1>,>5>,>->6>)> ShridharAcharya(>1>,>1>,>6>)> ShridharAcharya(>2>,>12>,>18>)> |
>
>
출력 :
문자열 ti int
Roots of the quadratic equation are : 2.0 3.0 Roots are imaginary Roots of the quadratic equation are : -3.0 -3.0>
이는 어설션 조건이 False가 되자마자 이 예외가 어떻게 프로그램 실행을 중지하는지 보여주는 예입니다.
기타 유용한 응용 프로그램:
- 매개변수 값을 확인하는 중입니다.
- 유효한 입력/유형을 확인 중입니다.
- 다른 프로그래머의 인터페이스 남용을 감지합니다.
- 함수의 출력을 확인합니다.