Как работает оператор целочисленного деления (//)?

Оператор // выполняет деление с округлением результата вниз, к минус бесконечности. Поэтому -7 // 3 равно -3, а не -2.

Короткий ответ

Что ответить на собеседовании

Оператор // выполняет деление с округлением результата вниз, к минус бесконечности. Поэтому -7 // 3 равно -3, а не -2.

Подробный разбор

Ответ с пояснениями

Оператор // выполняет деление с округлением результата вниз, к минус бесконечности. Поэтому -7 // 3 равно -3, а не -2.

Для положительных целых 7 // 3 даёт 2, остаток 7 % 3 равен 1. Для отрицательных важно правило пола: -7 = (-3) * 3 + 2.

Если один операнд float, результат обычно тоже float: 7.0 // 3 равно 2.0; вычисления подчиняются особенностям представления вещественных чисел. Деление на ноль вызывает ZeroDivisionError. Пользовательские классы могут реализовать __floordiv__ и задать собственное поведение, поэтому название «целочисленное» не означает обязательный тип int.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее