Оператор-заглушка, равноценный отсутствию операции.
В ходе исполнения данного оператора ничего не происходит, поэтому он может использоваться в качестве заглушки в тех местах, где это синтаксически необходимо, например: в инструкциях, где тело является обязательным, таких как def, except и пр.

Зачастую pass используется там, где код пока ещё не появился, но планируется. Кроме этого, иногда, его используют при отладке, разместив на строчке с ним точку остановки.

Во многих случаях вместо pass можно сделать что-нибудь более полезное:

    try:
some_func()

except AttributeError:
pass # Возможно стоит хотя бы записать исключение в журнал.


class MyException(Exception):
pass # Здесь лучше добавить строку документации для класса.


class MySubclass(MyClass):

def do_something(self):
pass
# Подобное «перекрытие» родительского метода — возможный индикатор
# проблем проектирования интерфейса.


with my_context() as my:
pass
# При таком подходе теряется сам смысл менеджера контекста.

На заметку
Оператор не может расцениваться как полноценная по смыслу замена для ... (многоточия).
Синонимы поиска: pass, noop
В разделе «Simple Statements (простые инструкции, операторы)»: assert del raise with Арифметические операторы
На заметку
Читайте нас в Twitter. Ссылка в самом низу страницы.