Код уже читаем и корректен. Можно убрать промежуточную переменную quotient, сохранив оператор / и поведение при делении на ноль.
Улучшение читаемости функции деления
Код уже читаем и корректен. Можно убрать промежуточную переменную quotient, сохранив оператор / и поведение при делении на ноль.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Необходимо выполнить рефакторинг представленного кода: сделать его более понятным, привести к единообразному форматированию и дать осмысленные имена функциям и переменным.
def divide(numerator, denominator):
quotient = numerator / denominator
return quotient
def main():
first, second = 10, 3
print(divide(first, second))
if __name__ == "__main__":
main()
Ответ
Код уже читаем и корректен. Можно убрать промежуточную переменную quotient, сохранив оператор / и поведение при делении на ноль.
def divide(numerator, denominator):
return numerator / denominator
def main():
numerator = 10
denominator = 3
print(divide(numerator, denominator))
if __name__ == '__main__':
main()
Имена в main теперь отражают роли аргументов. Для показанных целых чисел / возвращает float, поэтому результат будет примерно 3.3333333333333335. Замена на // изменила бы смысл на целочисленное деление. Без дополнительного требования не нужно подавлять ZeroDivisionError или возвращать особое значение: это уже изменение контракта, а не косметический рефакторинг.