Найти тему

Возврат результата функцией Python

В Паскале, например, есть функции и есть процедуры. Функции возвращают результат, процедуры - нет (хотя могут через параметры, но это уже нюансы). В большинстве же других языков нет разделения на процедуры и функции. Если глубоко копнуть Python, то увидим С++, а если ещё копнуть, то и чистый С ))) Возможно поэтому в Python, как и в С/С++, имеются только функции. И эти функции могут возвращать результат, а могут и не возвращать. Функции, которые НЕ возвращают результат, иногда ещё называют void-функциями. Пример такой простой функции см. здесь.

И, тем не менее, даже если функция не возвращает результат, её можно присвоить какой-либо переменной при вызове. В этом случае после вызова функции в переменной будет значение None:

x = print("Hello") # Здесь х = None

Значение None - это не то же самое, что строка 'None'. Это специальное значение, которое имеет собственный тип:

>>> print(type(None))
<class 'NoneType'>

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

А для того, чтобы вернуть результат, используется инструкция return. Пример:

Разумеется, не обязательно внутри функции использовать дополнительную переменную z. Можно написать и так:

return x + y

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

На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить.

P.S. Тут наверно меня опять упрекнут в том, что я не всё рассказал про функции. Но я это делаю осознанно по следующим причинам: 1) если всё описать в одной статье, то до конца её всё равно никто не дочитает; 2) этот канал в основном рассчитан на новичков, которым сложно разобраться во всём сразу; 3) Дзен - это не Википедия, здесь статьи больше комментируют, чем читают; 4) если сразу всё описать, то потом будет нечего рассказывать (шутка))).