Теперь, какое из стандартных исключений будет наиболее уместным для получения NotReadyException из?
Exception
Не связывайтесь ни с чем другим.
http://code.google.com/p/soc/wiki/PythonStyleGuide#Exceptions
Каковы ваши варианты использования для обработки исключений?
Если бы вы извлекли свое исключение из, скажем, ValueError
, вы бы когда-нибудь написали обработчик, который использовал бы except ValueError:
, чтобы перехватить оба исключения и обработать их точно так же?Навряд ли.
ValueError
является универсальным, когда более конкретные исключения не подходят.Ваше исключение очень специфично.
Если у вас есть подобное исключение для конкретного приложения, вероятность его использования любой полезной семантики со встроенным исключением является низкой.Шансы на фактическое объединение нового и существующего исключения в один обработчик очень и очень малы.
Единственный случай, когда вы когда-либо объедините исключение для конкретного приложения с общими исключениями, - это использование except Exception:
в каком-то универсальном логгере.