Это, вероятно, не имеет смысла без примера. Я использую python-disqus в своем приложении Django и оборачиваю его, чтобы лучше отделить его от остальной части моего приложения.
У меня есть файл disqus.py, который импортирует disqusapi
и определяет ряд вспомогательных функций. В другом месте кода приложения я могу просто добавить from mango import disqus
, но в некоторых местах необходимо фиксировать исключения, которые могут возникать при выполнении вызовов API. Это означает, что я вынужден сделать что-то вроде:
from disqusapi import APIError
from mango import disqus
try:
disqus.thread.fetch(1)
except APIError, error:
logger.warn('Disqus API error: %s' % error)
Если бы вместо этого я импортировал APIError
вверху disqus.py, я мог бы вместо этого написать:
from mango import disqus
try:
disqus.thread.fetch(1)
except disqus.APIError, error:
logger.warn('Disqus API error: %s' % error)
Pyflakes жалуется на неиспользованный импорт, но это кажется разумным. Должен ли я счастливо проигнорировать Pyflakes здесь, или я пропускаю лучший вариант?
Для ясности, мне не нужно каким-либо образом изменять disqusapi.APIError
, поэтому подклассы не нужны.