Python Assert 사용법 소개(코드 포함)

不言
풀어 주다: 2019-04-01 10:38:28
앞으로
23266명이 탐색했습니다.

이 글은 Python Assert의 사용법을 소개합니다(코드 포함). 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

python 주장 문장 형식과 사용법은 매우 간단합니다. 일반적으로 프로그램은 실행 후 예외를 발생시킵니다. 예외가 발생한 코드에서 실행을 직접 종료하려면 Assert를 사용하세요. 프로그램 실행이 완료될 때까지 기다리는 대신 예외가 발생합니다.

파이썬의 역할 Assert

python Assert 예외가 발생하면 해당 표현식이 false라는 의미입니다. 표현식 반환 값이 false인 경우 예외가 발생하는 것으로 이해할 수 있습니다.

assert 문의 구문 형식

assert expression [, arguments]
assert 表达式 [, 参数]
로그인 후 복사

#🎜🎜 # 추가 참고 사항: Assert는 여러 표현식에도 사용할 수 있습니다: assert 표현식1, 표현식2.
참고: 표현식 = false인 경우 그 뒤의 예외가 실행됩니다.

몇 가지 예를 살펴보겠습니다.

1: 단일 표현식:

a = 1assert a < 0,
 &#39;出错了,a大于0 啊&#39;
 print(&#39;这里不会输出&#39;)
로그인 후 복사
#🎜 🎜#

출력:

Traceback (most recent call last):
  File "main.py", line 3, in <module>    
  assert a < 0, &#39;出错了,a大于0 啊&#39;
  AssertionError: 出错了,a大于0 啊
로그인 후 복사

2: 여러 표현식:

#🎜 🎜#

a = 1
b = -1
assert a > 0, b < 0
print(&#39;正常输出,表达式返回真了&#39;) # 输出:正常输出,表达式返回真了
로그인 후 복사

3: 어설션 예외 포착 시도:

import traceback

try:
    assert a < 0
except AssertionError as aeeor:  # 明确抛出此异常
    # 抛出 AssertionError 不含任何信息,所以无法通过 aeeor.__str__()获取异常描述
    print(&#39;AssertionError&#39;, aeeor, aeeor.__str__())

    # 通过 traceback 打印详细异常信息
    print(&#39;traceback 打印异常&#39;)
    traceback.print_exc()
except:  # 不会命中其他异常
    print(&#39;assert except&#39;)

try:
    raise AssertionError(&#39;测试 raise AssertionError&#39;)
except AssertionError as aeeor:
    print(&#39;raise AssertionError 异常&#39;, aeeor.__str__())
로그인 후 복사

출력:

AssertionError
traceback 打印异常
Traceback (most recent call last):
  File "main.py", line 7, in <module>
    assert a < 0
AssertionError
raise AssertionError 异常 测试 raise AssertionError
로그인 후 복사

4: 함수 호출 오류 예외:

# 除法运算
def foo(value, divide):
    assert divide != 0
    return value / divide


print(&#39;4除以2 =&#39;, foo(4, 2))  # 执行成功
print(&#39;4除以0 =&#39;, foo(4, 0))  # 抛出异常
로그인 후 복사

출력:

4除以2 = 2.0
Traceback (most recent call last):
  File "main.py", line 8, in <module>
    print(&#39;4除以0 =&#39;, foo(4, 0))  # 抛出异常
  File "main.py", line 3, in foo
    assert divide != 0
AssertionError
로그인 후 복사

위의 예를 보면 모두가 감동받을 것이라고 믿습니다. aseert

Summary 사용 이해하기: 표현식이 false를 반환하는 경우. 실행을 종료하고 계속 실행하려면 직접 예외를 발생시킵니다.

【관련 추천:

python 비디오 튜토리얼

위 내용은 Python Assert 사용법 소개(코드 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:cnblogs.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿