summaryrefslogtreecommitdiffstats
path: root/Doc/library/exceptions.rst
diff options
context:
space:
mode:
authorKinshuk Dua <kinshukdua@gmail.com>2022-01-27 10:24:48 (GMT)
committerGitHub <noreply@github.com>2022-01-27 10:24:48 (GMT)
commit08c0ed2d9c0d01ad1a5adc0787bc75e4e90cbb85 (patch)
treebcb78c4f5b61fb3345fd7e711fb638f7c823457f /Doc/library/exceptions.rst
parent606e496dd6e2ace298532da200169124c26ae0f2 (diff)
downloadcpython-08c0ed2d9c0d01ad1a5adc0787bc75e4e90cbb85.zip
cpython-08c0ed2d9c0d01ad1a5adc0787bc75e4e90cbb85.tar.gz
cpython-08c0ed2d9c0d01ad1a5adc0787bc75e4e90cbb85.tar.bz2
bpo-23556: [doc] Fix inaccuracy in documentation for raise without args. Improve tests for context in nested except handlers. (GH-29236)
Diffstat (limited to 'Doc/library/exceptions.rst')
-rw-r--r--Doc/library/exceptions.rst17
1 files changed, 8 insertions, 9 deletions
diff --git a/Doc/library/exceptions.rst b/Doc/library/exceptions.rst
index e093425..d0b2e62 100644
--- a/Doc/library/exceptions.rst
+++ b/Doc/library/exceptions.rst
@@ -38,15 +38,14 @@ information on defining exceptions is available in the Python Tutorial under
Exception context
-----------------
-When raising (or re-raising) an exception in an :keyword:`except` or
-:keyword:`finally` clause
-:attr:`__context__` is automatically set to the last exception caught; if the
-new exception is not handled the traceback that is eventually displayed will
-include the originating exception(s) and the final exception.
-
-When raising a new exception (rather than using a bare ``raise`` to re-raise
-the exception currently being handled), the implicit exception context can be
-supplemented with an explicit cause by using :keyword:`from<raise>` with
+When raising a new exception while another exception
+is already being handled, the new exception's
+:attr:`__context__` attribute is automatically set to the handled
+exception. An exception may be handled when an :keyword:`except` or
+:keyword:`finally` clause, or a :keyword:`with` statement, is used.
+
+This implicit exception context can be
+supplemented with an explicit cause by using :keyword:`!from` with
:keyword:`raise`::
raise new_exc from original_exc