JustCaptain kod-buduschego
llm/senior-883e8c
Перейти к файлу
Код
MATERIAL.md

Методический материал: оператор return в Python

  1. Что такое return

return — оператор, который возвращает результат работы функции.

С его помощью функция может передать значение наружу.

Общий синтаксис:

def имя_функции():
return значение

⸻

  1. Зачем нужен return

Без return функция просто выполняет действия.

С return функция может:

  • возвращать вычисления;
  • передавать данные в другую часть программы;
  • использовать результат повторно.

⸻

Пример без return

def add():
result = 5 + 3
print(result)
add()

Результат:

8

Проблема:

Число только выводится на экран.

Использовать его дальше нельзя.

Например:

x = add()
print(x)

Результат:

8
None

Почему None?

Потому что функция ничего не вернула.

⸻

Пример с return

def add():
result = 5 + 3
return result
x = add()
print(x)

Результат:

8

Теперь значение можно сохранить в переменную.

⸻

  1. Как работает return

Когда Python встречает:

return

происходит:

  1. выполнение функции останавливается;
  2. значение возвращается наружу;
  3. оставшийся код функции не выполняется.

⸻

Пример

def test():
print("Начало")
return
print("Конец")
test()

Результат:

Начало

Строка:

print("Конец")

не выполнится.

⸻

  1. Возврат одного значения

Самый частый вариант.

def square(number):
return number * number
result = square(4)
print(result)

Результат:

16

⸻

Разбор

Функция:

square(4)

получает:

number = 4

Далее:

return number * number

возвращает:

16

⸻

  1. Возврат нескольких значений

Python позволяет вернуть несколько значений сразу.

def person():
name = "Alice"
age = 25
return name, age
user_name, user_age = person()
print(user_name)
print(user_age)

Результат:

Alice
25

Фактически Python возвращает кортеж.

То есть:

return name, age

равно:

return (name, age)

⸻

  1. return и print() — разница

Частая ошибка начинающих — путать их.

print()

Только показывает информацию.

def sum_numbers(a, b):
print(a + b)
sum_numbers(2, 3)

Результат:

5

Но:

x = sum_numbers(2, 3)
print(x)

Вывод:

5
None

⸻

return

Возвращает значение.

def sum_numbers(a, b):
return a + b
x = sum_numbers(2, 3)
print(x)

Результат:

5

⸻

Главное правило

print() → показать
return → вернуть

⸻

  1. Возврат значения сразу

Необязательно создавать переменную.

Было:

def multiply(a, b):
result = a * b
return result

Можно:

def multiply(a, b):
return a * b

⸻

  1. Несколько return

Функция может иметь несколько вариантов возврата.

Пример:

def check(number):
if number > 0:
return "Положительное"
if number < 0:
return "Отрицательное"
return "Ноль"
print(check(5))
print(check(-3))
print(check(0))

Результат:

Положительное
Отрицательное
Ноль

⸻

  1. Досрочное завершение функции

return можно использовать для выхода из функции.

def divide(a, b):
if b == 0:
return "Ошибка"
return a / b
print(divide(10, 2))
print(divide(10, 0))

Результат:

5.0
Ошибка

⸻

  1. return без значения

Можно написать:

return

или ничего не писать.

Тогда Python возвращает:

None

Пример:

def hello():
print("Привет")
x = hello()
print(x)

Результат:

Привет
None

Эквивалент:

def hello():
print("Привет")
return None

⸻

  1. Что такое None

None — специальное значение Python.

Означает:

отсутствие значения

Пример:

x = None
print(x)

Результат:

None

⸻

  1. return внутри условий

def is_even(number):
if number % 2 == 0:
return True
return False
print(is_even(4))
print(is_even(5))

Результат:

True
False

Можно короче:

def is_even(number):
return number % 2 == 0

⸻

  1. Вложенный вызов функций

Результат return можно передавать в другие функции.

def square(x):
return x * x
def sum_squares(a, b):
return square(a) + square(b)
print(sum_squares(2, 3))

Результат:

13

⸻

  1. Типичные ошибки

Ошибка 1: забыли return

Неправильно:

def square(x):
x * x
result = square(5)
print(result)

Результат:

None

Правильно:

def square(x):
return x * x

⸻

Ошибка 2: писать код после return

Неправильно:

def test():
return 10
print("Hello")

Код недостижим.

⸻

Ошибка 3: путать print и return

Неправильно:

def add(a, b):
print(a + b)
result = add(2, 3)
print(result + 5)

Ошибка:

TypeError

Правильно:

def add(a, b):
return a + b

⸻

  1. Практические задания

Задание 1

Напишите функцию:

square(number)

которая возвращает квадрат числа.

⸻

Задание 2

Создайте функцию:

max_number(a, b)

которая возвращает большее число.

⸻

Задание 3

Напишите функцию:

is_positive(number)

которая возвращает:

True

если число положительное, иначе:

False

⸻

  1. Итог

return:

  • возвращает значение из функции;
  • завершает выполнение функции;
  • позволяет использовать результат дальше в коде.

Разница:

Оператор Назначение
print() вывод в консоль
return возврат результата

Рекомендация:

  • если функция вычисляет значение — использовать return;
  • print() применять только для отображения информации пользователю.