В Python инструкция return
может встречаться лишь в теле функции, и за ней может следовать необязательное выражение. Выполнение инструкции return
приводит к прекращению работы функции, а значение выражения, если оно имеется, возвращается в качестве результата. Если работа функции завершается достижением конца ее тела или посредством выполнения инструкции return
, не содержащей выражения, то она возвращает значение None
. Разумеется, функция может вернуть это значение посредством инструкции return None
.
В соответствии с установившейся практикой программирования избегайте завершать тело функции инструкцией return
, не содержащей выражения. Если некоторые из инструкций return
в теле функции содержат выражения, то выражения должны содержаться в каждой инструкцииreturn
данной функции . Использование инструкции return None
оправданно лишь в тех случаях, когда это делается в интересах соблюдения данных рекомендаций по стилевому оформлению кода.
Python не возводит эти соглашения в ранг обязательных требований, но, соблюдая их, вы сделаете свой код более понятным и удобочитаемым.
def sum(a, b): return a + b def func(a, b): if a > b: x = a - b return x*x return a + b # или def func(a, b): if a > b: c = a - b x = c*c else: x = a + b return x