Python Glossary English

все Python 3Циклыконструкция

pass

управление

Пустой оператор: ничего не делает. Нужен там, где синтаксис требует блок, а кода ещё нет — тело функции, класса, ветки if или except.

Синтаксис

def todo():
    pass

Частая ошибка — считать, что pass в цикле пропускает итерацию: он не делает ничего, и код после него в той же итерации выполняется. Пропускает остаток итерации continue. Вместо pass можно написать ... (Ellipsis) — это выражение-значение, которое тоже ничего не делает; по соглашению ... ставят в заглушках и протоколах, а pass — где пустота намеренная. Опасный случай — except: pass: ошибка исчезает без следа, и искать её потом приходится вслепую.

Примеры

out_pass, out_cont = [], []
for i in range(4):
    if i % 2:
        pass  # ничего не делает
    out_pass.append(i)
for i in range(4):
    if i % 2:
        continue  # переходит к следующей итерации
    out_cont.append(i)
print(out_pass)  # → [0, 1, 2, 3]
print(out_cont)  # → [0, 2]
class Plugin:
    pass
def later():
    ...
print(later())  # → None
print(Plugin.__name__)  # → Plugin

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности