Сбой функции: повысить исключение или вернуть FALSE?Какой подход лучше? - PullRequest
8 голосов
/ 18 февраля 2012

Мне было интересно, как вы, ребята, справляетесь с ошибками функций.Вы вызываете исключение или возвращаете сообщение об ошибке?

Например, у меня есть функция, которая должна подключаться к внешнему com-объекту.Если com-объект не был инициирован через другую программу, соединение не может быть установлено.Какой предпочтительный способ уведомления основной программы на языке python?Должен ли я вызвать исключение с подробным сообщением об ошибке или просто вернуть сообщение об ошибке?

Спасибо!

Ответы [ 2 ]

9 голосов
/ 18 февраля 2012

Python здесь абсолютно исключен.я всегда находил эту статью отличным объяснением.

2 голосов
/ 18 февраля 2012

Создайте исключение, вот для чего они существуют.

Они позволяют вещам, использующим ваш код, управлять ошибкой, а передача строк назад предоставляет слишком много возможностей для неправильного обращения.

Рассмотримв случае, если вы возвращаете строку или обычную итерацию, проверка на сообщение об ошибке может вызвать проблемы и может не перехватить их все время, это также не очень Pythonic.

...