Я пытаюсь вручную обработать исключение деления на ноль в python3.5, однако он продолжает игнорировать мой пользовательский случай и выдает исключение по умолчанию. Как я могу этого избежать? Любая помощь приветствуется.
ПРИМЕЧАНИЕ. Я использую список в качестве стека, следовательно, последний и проверяю, равен ли верхний элемент 0. Кроме того, порядок правильный - я намеренно беру верхний элемент в качестве знаменателя.
elif 'div' in command:
if len(stack)!=0 and len(stack)!=1 and is_digit(stack[len(stack)-2]) and is_digit(stack[len(stack)-1]) and stack[len(stack)-1]!=0:
op2 = stack.pop();
op1 = stack.pop();
stack.append(str( int(int(op1) / int(op2)) ) + '\n');
else:
stack.append(':error:\n');
Это дает ZeroDivisionError: деление на ноль ВМЕСТО :error: