Возврат значений
Функция print_area, которую вы написали ранее в этом уроке, выводит площадь, и это всё. Но что, если мы хотим продолжить вычисления с результатом, например сложить площади всех комнат в квартире? Выведенное значение только показано в выводе; программа больше не может с ним работать.
Поэтому функции могут возвращать значение. Ключевое слово return отправляет значение обратно в то место, откуда функцию вызвали:
def add(a, b):
return a + b
result = add(2, 3)
print(result)Выведется:
5Вызов add(2, 3) запускает функцию, и функция возвращает 5. Можно представить, что Python заменяет вызов значением, которое вернула функция, так что result = add(2, 3) превращается в result = 5. Значение, которое возвращает функция, называется её возвращаемым значением. Некоторые из них вы уже знаете: len(names) возвращает количество элементов списка, а .pop() возвращает элемент, который удалил.
Вызов можно использовать везде, где вы написали бы значение: сразу вывести его, вычислять с ним, подставить в f-строку или в условие:
def add(a, b):
return a + b
print(add(2, 3))
total = add(2, 3) * 2
print(total)
print(f"2 + 3 = {add(2, 3)}")
if add(2, 3) > 4:
print("Больше 4")Выведется:
5
10
2 + 3 = 5
Больше 4В print(add(2, 3)) Python сначала вызывает add(2, 3), а затем выводит 5, которое вернула функция. В add(2, 3) * 2 вызов превращается в 5, а 5 * 2 — это 10.
Задание
- 1
Программа завершается ошибкой
NameError: name 'rectangle_area' is not defined, потому что функции ещё нет. Напишите её вместо комментария: у функцииrectangle_areaдва параметра,widthиheight, и она возвращаетwidth * height. Тогда программа выведетКухня: 12иСпальня: 20. - 2
В квартире есть ещё гостиная размером 6 × 5 метров. Создайте переменную
living_roomс её площадью, вычисленной с помощью функцииrectangle_area. Затем выведите площадь всей квартиры,kitchen + bedroom + living_room, с подписьюВся квартира:. Должно получиться62.