Чем return отличается от print python
Перейти к содержимому

Чем return отличается от print python

  • автор:

чем отличается return от print() в python [закрыт]

Закрыт. Этот вопрос необходимо уточнить или дополнить подробностями. Ответы на него в данный момент не принимаются.

Хотите улучшить этот вопрос? Добавьте больше подробностей и уточните проблему, отредактировав это сообщение.

Закрыт 4 года назад .
Объясните пожалуйста чем отличается return от print() в python
Отслеживать
задан 9 янв 2020 в 14:24
1 1 1 бронзовый знак

return Это возврат значения из фукнции, print Это вывод на экран. Они отличаются примерно как картошка и кастрюля.

9 янв 2020 в 14:26

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Возвращает значение из функции.Пример:

def f(): return 10 print(f()-1) 

Выводит на экран:

def f(): print("hi") f() 
def f(): return "hi" f() 
def f(): return "hi" print(f()) 

Отслеживать
ответ дан 9 янв 2020 в 14:32
USERNAME GOES HERE USERNAME GOES HERE
10.4k 21 21 золотой знак 25 25 серебряных знаков 53 53 бронзовых знака

return значит что функция что-то возвращает. Это что-то можно потом передавать в другую функцию, или иным образом взаимодействовать. print просто что-то печатает, при этом функция будет возвращать None . В дальнейшем вы с этим значением никак работать не сможете. Также после выполнения инструкции return дальнейший код функции не читается, она всегда заканчивается return

def foo(x): return x**2 print(x + 1) # эта строка кода "не достижима", питон ее даже читать не будет def bar(x): print(x**2) # тут можно еще сколько угодно принтов и прочего кода написать print(foo(3) * 2) # 18 print(bar(3) * 2) # ошибка 

Отслеживать
ответ дан 9 янв 2020 в 15:06
1,606 1 1 золотой знак 5 5 серебряных знаков 15 15 бронзовых знаков

    Важное на Мете
Похожие

Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.26.3951

Python-сообщество

[RSS Feed]

  • Начало
  • » Python для новичков
  • » Return и print

#1 Янв. 13, 2013 12:21:42

schokk Зарегистрирован: 2013-01-08 Сообщения: 1 Репутация: 0 Профиль Отправить e-mail

Return и print

Добрый день. Объясните мне пожалуйста, в чём разница между return и print.
Return можно использовать только в функции, но ведь в функции можно использовать и print, что делает return аналогичным print’у.

#2 Янв. 13, 2013 12:39:43

4kpt От: Харьков Зарегистрирован: 2010-11-03 Сообщения: 998 Репутация: 63 Профиль Отправить e-mail

Return и print

return возвращает значение, которое потом можно использовать.
Чтобы вернуть значение с помощью print (по-умолчанию print выводит значение на экран) нужно городить целый код с использованием stdout.
Кроме того, после return — работа функции заканчивается, независимо от того, идут дальше строки кода в функции или нет. После print — нет.

def call(a, b): print a print b print a*b 

Отобразит три значения, а функция

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

Только первый аргумент функции…

Отредактировано 4kpt (Янв. 13, 2013 12:42:57)

Зачем нужен return, когда есть print?

Разница только в том, что мы в первом случае пишем: print при вызове функции, а в самой функции нет. А во втором пишем: print в функции, но при вызове нет. Только в этом разница или есть ещё какая-то?

  • Вопрос задан более года назад
  • 326 просмотров

Комментировать
Решения вопроса 1

SoreMix

soremix @SoreMix Куратор тега Python

Если нужно просто вывести на экран результат — разницы нет, в данном примере. Если нужно в дальнейшем использовать значение, возвращенное функцией, то, конечно, нужен return . Допустим, как тут, если нужно сравнить два числа, и вернуть из них большее, чтобы затем работать с ним дальше, можем сделать так:

def func(x, y): if x > y: return x elif x == y: return 'Числа равны.' else: return y max_num = func(3,4)

И в результате в переменной max_num будет наше наибольшее число (ну, либо текст). В данном примере несовсем понятно, конечно.

Ну вот допустим у нас есть встроенная функция max , которая возвращает максимальное значение из переданных параметров, нечто похожее на то, что сделали вы. Для более наглядного примера я бы рассмотрел random.choice()

Предположим, у нас есть список элементов и нам надо из него выбрать случайный элемент и работать с ним дальше. Мы вызываем random.choice() , который через return вернет нам этот случайный элемент и мы будем с ним работать дальше. Например, использовать его как часть текста.

greetings = ['Привет', 'Hello', 'Здравствуйте'] greeting = random.choice(greetings) print(f', master')

В итоге при каждом запуске кода мы будем получать случайный элемент списка в переменную, и все это благодаря наличию return в методе choice. Если бы там было не возвращение элемента через return, а просто print. то тогда наш случайный элемент печатался в консоль и на этом все. Ну, надеюсь понятно.

В функцию вы передаете свои переменные и получаете из нее результат работы через return, для использования этого результата в дальнейшем. Если такой результат не нужен — то и return по сути тоже не нужен.

Если надо будет найти максимальный элемент и использовать его в дальнейшей работе, то с таким кодом —

def func(x, y): if x > y: print(x) elif x == y: print('Числа равны.') else: print(y) max_num = func(3,4) print('Максимальное число -', max_num)

В чем разница между return и print?

В этом году дал себе залог освоить хотя бы в каком то виде программирование.

На примере функций в Python возник такой вот вопрос.

Есть две конструкции:

def calc (a,b): total = a + b return total summ = calc (1,1) print (summ) и def calc (a,b): total = a + b print (total) calc(1,1)

На сколько я понимаю при print мы просто отдаем значение total в консоль и программа завершается, а при return мы возвращаем значение total и в последующем можем использовать его.

Результат при исполнении один и тот же, поэтому и возник вопрос в чем разница между двумя такими способами? Можете дать пару примеров как еще используется return?

  • Вопрос задан более трёх лет назад
  • 7577 просмотров

2 комментария

Простой 2 комментария

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *