Для более подробной информации
def func():
assert 1,2 == (2,3)
Это вывод dis.dis
вышеуказанной функции:
0 LOAD_CONST 1 (1)
2 POP_JUMP_IF_TRUE 16
4 LOAD_GLOBAL 0 (AssertionError)
6 LOAD_CONST 2 (2)
8 LOAD_CONST 4 ((2, 3))
10 COMPARE_OP 2 (==)
12 CALL_FUNCTION 1
14 RAISE_VARARGS 1
>> 16 LOAD_CONST 0 (None)
18 RETURN_VALUE
Как видите, POP_JUMP_IF_TRUE
переходит к16, который полностью пропускает AssertionError
.А так как вершина стека составляет 1
, это JUMP
s.