Встречается на собеседованиях • сегодня

В чем разница между pass и ... в функции

pass и ... (Ellipsis) в Python оба используются как заглушки, но есть нюансы:

  1. pass — оператор-заглушка, ничего не делает. Используется там, где синтаксис требует наличия кода, но логика его не требует.
    python
    def empty_func():
        pass  # функция ничего не делает
  1. ... (Ellipsis) — объект типа Ellipsis. Чаще используется в NumPy/SciPy для срезов, но может быть заглушкой.
    python
    def incomplete_func():
        ...  # тоже ничего не делает, но это объект

Ключевые отличия:

  • pass — оператор, ... — объект (можно передавать, проверять isinstance(..., type(...))).
  • pass нельзя использовать в выражениях, ... — можно (x = ...).
  • Стилистически pass предпочтительнее для пустых блоков, ... — чаще в научных библиотеках или как временная метка.

Пример с Ellipsis в аннотациях:

python
def foo() -> ...:  # временная заглушка для аннотации
    ...
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы