/
Вопросы и ответы
/
Python
/

Как работает функция return в Python?

Как работает функция return в Python?

4 года назад

Andrey Moshkov

Ответы

1

1. Функции без return (подобно print()):

  • Они выполняют какое-то действие, но не возвращают значения, которые можно сохранить в переменной.
  • Просто выводят информацию на экран или выполняют какие-то действия, но не предоставляют результат, который можно использовать далее в программе.

Пример:

1
2
3
4
def greet(name):
    print(f"Привет, {name}!")

greet("Анна") # Эта функция выводит приветствие, но не возвращает значение.

2. Функции с return (подобно input()):

  • Они выполняют какое-то действие, но также возвращают значение, которое можно сохранить в переменной и использовать далее.
  • Возвращенное значение может быть использовано для присваивания переменным или в выражениях.

Пример:

1
2
3
4
5
6
def add(a, b):
    result = a + b
    return result # Эта функция возвращает сумму a и b.

sum_result = add(3, 5) # Результат функции сохраняется в sum_result.
print(sum_result) # Выведет 8

Функции с return могут хранить возвращенные значения, которые затем можно использовать в вашей программе.

2 года назад

Алёна Шереметьева

0

Функция return в Python используется для выхода из функции и возвращения значения из функции вызывающему коду.

Пример:

1
2
3
4
5
6
def add(a, b):
    return a + b

result = add(3, 5)
print(result)
# Вывод: 8

Если return не указан, функция возвращает None по умолчанию.

2 года назад

Elena Gromova

0

Оператор return возвращает значение указанное после него, например return 10 вернет 10.

Пример 1

1
2
3
4
5
6
7
def example():
    return 10

x = example()
print(x)
# Output
10

Если указано несколько значений, например return 10, '123', то вернется кортеж (10, '123')

Пример 2

1
2
3
4
5
6
7
def example():
    return 10, '123'

x = example()
print(x)
# Output
(10, '123')

Пример 3

1
2
3
4
5
6
7
def example():
    return (10, '123')

x = example()
print(x)
# Output
(10, '123')

В случае, когда оператор return не указан в теле функции или указан без значения, тогда вернется значение None

Пример 4

1
2
3
4
5
6
def example():
    return

x = example()
print(x)
# Output

Пример 5

1
2
3
4
5
6
def example():
    pass

x = example()
print(x)
# Output

4 года назад

Ilia Kaziamov

0

return завершает функцию и отдаёт значение в то место программы, откуда функцию вызвали:

1
2
3
4
5
def square(x):
    return x * x

result = square(5)
print(result)  # => 25

return — оператор языка. Скобки после него не нужны: return x * x.

Простыми словами

Функция получает данные, считает и через return отдаёт ответ. Без return функция выполнит действия, но результат наружу не попадёт.

return и print

Частая ошибка новичков — путать их:

1
2
3
4
5
6
7
8
9
10
11
def square_print(x):
    print(x * x)    # выводит на экран

def square_return(x):
    return x * x    # отдаёт значение

a = square_print(5)   # на экране 25
b = square_return(5)  # на экране ничего

print(a)  # => None — функция ничего не вернула
print(b)  # => 25

print показывает значение человеку. return передаёт значение дальше в программу: его можно сохранить в переменную, сложить, передать в другую функцию.

Функция без return

Если return нет или он без значения, функция возвращает None:

1
2
3
4
5
6
def greet(name):
    print("Привет,", name)

print(greet("Анна"))
# Привет, Анна
# None

Код после return не выполняется

1
2
3
4
5
def check(x):
    if x < 0:
        return "отрицательное"
    return "неотрицательное"
    print("эта строка никогда не выполнится")

Поэтому return используют для раннего выхода из функции.

Вернуть несколько значений

1
2
3
4
5
def min_max(numbers):
    return min(numbers), max(numbers)

low, high = min_max([3, 1, 4])
print(low, high)  # => 1 4

Функция возвращает кортеж (1, 4), а запись low, high = ... раскладывает его на две переменные.

Если ищете, как отменить действие

return не отменяет уже выполненные действия. В редакторе отмену делает Ctrl + Z, в Git — git revert или git reset.

Функции и return разбирают в бесплатном курсе «Основы Python».

8 дней назад

Никита Вихров

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845