print или return: частая путаница
print и return делают совсем разное, но новички их путают — и функция «не работает».
print — показать на экране
print просто выводит текст пользователю. Это удобно, чтобы что-то увидеть, но выведенное значение нельзя использовать дальше в коде — оно ушло на экран и исчезло из программы.
return — вернуть значение в код
return отдаёт результат обратно туда, откуда вызвали функцию, чтобы его можно было сохранить, сложить, передать дальше. Функция без return возвращает None — «ничего». Именно это ломает расчёты у новичков.
Наглядный пример
Функция, которая складывает два числа и делает print, покажет сумму, но результат = такой_функции() окажется None. А та же функция с return вернёт число, и его можно использовать: total = summa(2, 3).
Как не путать
Спросите себя: результат нужен только человеку на экране — используйте print. Результат нужен коду дальше — используйте return. Часто в функции стоит return, а print вызывают уже снаружи. Отточить это удобно на практике в «Дрон Кодере».
Частые вопросы
Можно ли в одной функции и return, и print? Да, но помните: только return передаёт значение в код.
Почему функция печатает None? Скорее всего, вы сделали print(функция()), а функция ничего не возвращает — добавьте return.
Начать игру бесплатно