Python

assert

taltal 2022. 12. 1. 00:32
728x90
반응형

python에서 assert는

일종의 try, except를 하나로 축약한 것과 비슷합니다.

 

assert 다음에 조건문을 넣어서,

조건문이 참이면 코드가 계속 진행

거짓이면 AssertionError로 코드가 중단

 

사용법은 다음과 같습니다.

assert <condition>,<error message:optional>

 

 

error message를 입력하지 않은 경우와 입력한 경우의 두가지로 나눠서 예제코드를 작성해봅시다.

 

1. No error message

assert 1 == 1
print("True를 지나왔습니다.")

assert 1 == 0
print("False를 지나왔습니다.")

위의 예제 코드를 실행하면 아래와 같이 출력됩니다.

True를 지나왔습니다.
AssertionError

assert 1 == 0  이 False 이기 때문에

"False를 지나왔습니다."가 출력되지 않고 그 바로 위에서 AssertionError가 발생하고 중단~

 

2. With error message

assert 1 == 1, "gogo"
print("True를 지나왔습니다.")

assert 1 == 0, "just like TT"
print("False를 지나왔습니다.")

위를 실행한 결과는 다음과 같습니다.

True를 지나왔습니다.
AssertionError: just like TT

1과 2의 차이는 AssertionError에 나오는 error message를 custom 하냐 안하냐의 차이일 뿐입니다!

 

try, except와 다를바가 없으니

assert가 나오는 코드를 보더라도 당황하지 맙시다.

728x90
반응형