> В чем разница функции и процедуры (Python)

Уровень: senior · Роль: backend · Язык: Python · Категория: Технические вопросы

Компании: TrueEngineering

Стек: Python

> Пример ответа

В Python формально нет строгого разделения на функции и процедуры, как в Pascal или Ada. Однако концептуально разница существует: функция возвращает значение с помощью return, а процедура - это подпрограмма, которая выполняет действия, но не возвращает явного результата (или возвращает None).

Пример процедуры:

PYTHON
def print_greeting(name):
print(f"Привет, {name}!") # ничего не возвращает

Пример функции:

PYTHON
def add(a, b):
return a + b # возвращает значение

На практике в Python любая подпрограмма является функцией, так как даже без return она неявно возвращает None. Но с точки зрения семантики: если код нужен только для побочного эффекта (вывод, запись в файл, изменение глобального состояния) - это процедура; если для вычисления и возврата результата - это функция. Хороший тон - не смешивать эти роли в одной подпрограмме.

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью