E 'OK alzare un built-in exception con un testo personalizzato? o per aumentare un built-in warning anche con testo personalizzato?È corretto generare un'eccezione built-in, ma con un messaggio diverso, in Python?
La documentazione si legge:
exception ValueError: Raised when a built-in operation or function receives an argument (…)
E 'implicito che solo operazioni integrate dovrebbero sollevare un'eccezione ValueError?
In pratica, capisco che è sicuro creare una classe di eccezione che eredita da ValueError o Exception. Ma è OK non farlo e sollevare direttamente un ValueError ("testo personalizzato")?
Poiché ValueError è integrato, l'aumento di un'eccezione ValueError (con un testo personalizzato) consente agli utenti di vedere rapidamente il tipo di problema coinvolto, rispetto a un tipo di eccezione personalizzato (qualcosa come "ValueErrorSpecificModule", che non è standard) .
Assicurarsi di rispettare la gerarchia delle eccezioni. È improbabile che, se si considera un'eccezione standard come "TypeError", quella sottoclasse di "Exception" sarebbe sempre una buona alternativa. Sottoclassi 'StandardError' forse ...' importa eccezioni come e; help (e) 'mostra l'albero. –