Программа Python не будет давать ответы, отличные от ответов, полученных на консоли, при условии, что одни и те же вычисления выполняются для одних и тех же входных данных.
Поэтому я думаю, что если вы внимательно проверите, вы увидите, что значения, используемые в программе, немного отличаются от значений, используемых в консоли. С числами, которые вы даете, вычисление действительно вернет точно ноль, так что я думаю, вы обнаружите, что числа, используемые в программе, не совсем то, что вы считаете, что они.
Все равно с плавающей точкой не точно. Это точно только до конечной точности. Как только вы начнете выполнять арифметику, вы должны делать сравнения с заданным допуском, а не с точным. Для проверки на ноль вы должны убедиться, что абсолютное значение результата меньше некоторого небольшого значения по вашему выбору.