Иногда встречаются особо хитрые случаи, когда вроде бы и глагол в начале функции, но нет...


Пример 1

В данном случае была попытка сделать функцию, играющую роль флага, но от функции с глаголом close в начале названия будет ожидаться, что она что-то закроет.

Плохо:


def close_state(self, obj):
return bool(obj.closed_at)

Хорошо:


def define_close_state(self, obj):
return bool(obj.closed_at)


Пример 2

Если функция с названием is_draft_deal будет передана в качестве аргумента, не получиться сразу понять, что это не переменная, а именно функция. Вспомогательные глаголы вроде is, has и прочие рекомендуются для наименования переменных-флагов, но не функций или методов.

Плохо:


def is_draft_deal(self, obj):
...

Хорошо:


def check_deal_is_draft(self, obj):
...