Результат роботи
Поки наші функції лише друкували. Але len("abc") нічого не друкує — вона повертає число 3, з яким можна працювати далі. Так робить return:
def square(x): return x * x a = square(5) # a = 25 print(square(3) + 1) # 10 print(square(square(2))) # 16
return негайно завершує функцію і віддає значення туди, звідки її викликали.
print ≠ return
def f(x): print(x * 2) # лише показує на екрані def g(x): return x * 2 # повертає — можна зберегти, порахувати y = g(5) + 1 # 11 z = f(5) + 1 # помилка! f повертає None
!ВАЖЛИВО
Правило: функція, що рахує, має повертати результат, а не друкувати. Друк — справа основної програми.
Можна повертати кілька значень: return a, b → x, y = f().
Перевір себе: 4 задачі з автоперевіркою і тренажер
▶ Розв'язувати задачіПідказки після помилок, розбір кожної задачі, бали й звання. Безкоштовно, можна без реєстрації.