From 2db56130631255ca2eb504519430fb2f1fe789e9 Mon Sep 17 00:00:00 2001 From: Hugo van Kemenade Date: Tue, 4 Jan 2022 00:52:09 +0200 Subject: bpo-34538: Remove Exception subclassing from tutorial (GH-30361) Remove the bit about subclassing exceptions. Documentation PR can skip the NEWS label. Automerge-Triggered-By: GH:iritkatriel --- Doc/tutorial/errors.rst | 36 +----------------------------------- 1 file changed, 1 insertion(+), 35 deletions(-) diff --git a/Doc/tutorial/errors.rst b/Doc/tutorial/errors.rst index f2490d6..3f09db2 100644 --- a/Doc/tutorial/errors.rst +++ b/Doc/tutorial/errors.rst @@ -329,41 +329,7 @@ be derived from the :exc:`Exception` class, either directly or indirectly. Exception classes can be defined which do anything any other class can do, but are usually kept simple, often only offering a number of attributes that allow -information about the error to be extracted by handlers for the exception. When -creating a module that can raise several distinct errors, a common practice is -to create a base class for exceptions defined by that module, and subclass that -to create specific exception classes for different error conditions:: - - class Error(Exception): - """Base class for exceptions in this module.""" - pass - - class InputError(Error): - """Exception raised for errors in the input. - - Attributes: - expression -- input expression in which the error occurred - message -- explanation of the error - """ - - def __init__(self, expression, message): - self.expression = expression - self.message = message - - class TransitionError(Error): - """Raised when an operation attempts a state transition that's not - allowed. - - Attributes: - previous -- state at beginning of transition - next -- attempted new state - message -- explanation of why the specific transition is not allowed - """ - - def __init__(self, previous, next, message): - self.previous = previous - self.next = next - self.message = message +information about the error to be extracted by handlers for the exception. Most exceptions are defined with names that end in "Error", similar to the naming of the standard exceptions. -- cgit v0.12