BufferError — Advanced Examples
Raised when a buffer-related operation fails
Custom BufferError subclass
Creating specialized exception subclasses of BufferError.
python
# Custom exception hierarchy class DetailedBufferError(BufferError): def __init__(self, message, details=None): super().__init__(message) self.details = details or {} def __str__(self): base = super().__str__() if self.details: detail_str = ", ".join(f"{k}={v}" for k, v in self.details.items()) return f"{base} [{detail_str}]" return base try: raise DetailedBufferError( "Something went wrong", {"code": 42, "source": "test"} ) except BufferError as e: print(f"Caught: {e}") if hasattr(e, 'details'): print(f"Details: {e.details}")
Custom exception subclasses let you add context and structure to your error handling.
Want to try these examples interactively?
Open Advanced Playground