Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
0eee97cc
Commit
0eee97cc
authored
Dec 09, 2012
by
Nick Coghlan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Issue #15209: Fix typo and some additional wording tweaks
parent
3f7c0e40
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
16 additions
and
8 deletions
+16
-8
Doc/library/exceptions.rst
Doc/library/exceptions.rst
+16
-8
No files found.
Doc/library/exceptions.rst
View file @
0eee97cc
...
@@ -39,19 +39,27 @@ When raising (or re-raising) an exception in an :keyword:`except` clause
...
@@ -39,19 +39,27 @@ When raising (or re-raising) an exception in an :keyword:`except` clause
new exception is not handled the traceback that is eventually displayed will
new exception is not handled the traceback that is eventually displayed will
include the originating exception(s) and the final exception.
include the originating exception(s) and the final exception.
When raising a new exception (rather than using to bare ``raise`` to re-raise
When raising a new exception (rather than using a bare ``raise`` to re-raise
the exception currently being handled), the implicit exception chain can be
the exception currently being handled), the implicit exception context can be
made explicit by using :keyword:`from` with :keyword:`raise`. The single
supplemented with an explicit cause by using :keyword:`from` with
argument to :keyword:`from` must be an exception or ``None``. It will be set
:keyword:`raise`::
as :attr:`__cause__` on the raised exception. Setting :attr:`__cause__`
also implicitly sets the :attr:`__suppress_context__` attribute to
raise new_exc from original_exc
``True``.
The expression following :keyword:`from` must be an exception or ``None``. It
will be set as :attr:`__cause__` on the raised exception. Setting
:attr:`__cause__` also implicitly sets the :attr:`__suppress_context__`
attribute to ``True``, so that using ``raise new_exc from None``
effectively replaces the old exception with the new one for display
purposes (e.g. converting :exc:`KeyError` to :exc:`AttributeError`, while
leaving the old exception available in :attr:`__context__` for introspection
when debugging.
The default traceback display code shows these chained exceptions in
The default traceback display code shows these chained exceptions in
addition to the traceback for the exception itself. An explicitly chained
addition to the traceback for the exception itself. An explicitly chained
exception in :attr:`__cause__` is always shown when present. An implicitly
exception in :attr:`__cause__` is always shown when present. An implicitly
chained exception in :attr:`__context__` is shown only if :attr:`__cause__`
chained exception in :attr:`__context__` is shown only if :attr:`__cause__`
is
not set
and :attr:`__suppress_context__` is false.
is
:const:`None`
and :attr:`__suppress_context__` is false.
In either case, the exception itself is always shown after any chained
In either case, the exception itself is always shown after any chained
exceptions so that the final line of the traceback always shows the last
exceptions so that the final line of the traceback always shows the last
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment