Python/Учебник Python 2.6: различия между версиями

Содержимое удалено Содержимое добавлено
→‎Оператор pass: оформление
Строка 786:
Например:
 
<big><source lang="python">>>> while True:
... pass # Ожидание прерывания c клавиатуры (Ctrl+C) в режиме занятости
...</source></big>
 
Этот оператор часто используется для создания минималистичных классов, к примеру ''исключений'' (<tt>exceptions<tt>), или для игнорирования нежелательных исключений:
 
<big><source lang="python">>>> class ParserError(Exception):
... pass
...
Строка 799:
... except ImportError:
... pass
...</source></big>
 
Другой вариант: <code>pass</code> может применяться в качестве заглушки для тела функции или условия при создании нового кода, позволяя вам сохранить абстрактный взгяд на вещи.
С другой стороны, оператор <code>pass</code> игнорируется без каких-либо сигналов, и лучшим выбором было бы породить исключение <code>NotImplementedError</code>:
 
<big><source lang="python">>>> def initlog(*args):
... raise NotImplementedError # Открыть файл для логгинга, если он ещё не открыт
... if not logfp:
... raise NotImplementedError # Настроить заглушку для логгинга
... raise NotImplementedError('Обработчик инициализации лога вызовов')
...</source></big>
 
Если бы здесь использовались операторы <code>pass</code>, а позже вы бы запускали тесты, они могли бы упасть без указания причины.