summaryrefslogtreecommitdiffstats
path: root/Doc/tutorial/errors.rst
diff options
context:
space:
mode:
authorInada Naoki <songofacandy@gmail.com>2020-11-06 02:45:01 (GMT)
committerGitHub <noreply@github.com>2020-11-06 02:45:01 (GMT)
commitbde33e428d5b5f88ec7667598fd27d1091840537 (patch)
treea031badd30c266aef3543c78bc5344e1d262e4e3 /Doc/tutorial/errors.rst
parent91e93794d5dd1aa91fbe142099c2955e0c4c1660 (diff)
downloadcpython-bde33e428d5b5f88ec7667598fd27d1091840537.zip
cpython-bde33e428d5b5f88ec7667598fd27d1091840537.tar.gz
cpython-bde33e428d5b5f88ec7667598fd27d1091840537.tar.bz2
bpo-42179: Doc/tutorial: Remove mention of __cause__ (GH-23162)
Diffstat (limited to 'Doc/tutorial/errors.rst')
-rw-r--r--Doc/tutorial/errors.rst19
1 files changed, 10 insertions, 9 deletions
diff --git a/Doc/tutorial/errors.rst b/Doc/tutorial/errors.rst
index 0ce9646..efe44da 100644
--- a/Doc/tutorial/errors.rst
+++ b/Doc/tutorial/errors.rst
@@ -273,15 +273,15 @@ Exception Chaining
==================
The :keyword:`raise` statement allows an optional :keyword:`from` which enables
-chaining exceptions by setting the ``__cause__`` attribute of the raised
-exception. For example::
+chaining exceptions. For example::
- raise RuntimeError from OSError
+ # exc must be exception instance or None.
+ raise RuntimeError from exc
This can be useful when you are transforming exceptions. For example::
>>> def func():
- ... raise IOError
+ ... raise IOError
...
>>> try:
... func()
@@ -297,12 +297,11 @@ This can be useful when you are transforming exceptions. For example::
<BLANKLINE>
Traceback (most recent call last):
File "<stdin>", line 4, in <module>
- RuntimeError
+ RuntimeError: Failed to open database
-The expression following the :keyword:`from` must be either an exception or
-``None``. Exception chaining happens automatically when an exception is raised
-inside an exception handler or :keyword:`finally` section. Exception chaining
-can be disabled by using ``from None`` idiom:
+Exception chaining happens automatically when an exception is raised inside an
+:keyword:`except` or :keyword:`finally` section. Exception chaining can be
+disabled by using ``from None`` idiom:
>>> try:
... open('database.sqlite')
@@ -313,6 +312,8 @@ can be disabled by using ``from None`` idiom:
File "<stdin>", line 4, in <module>
RuntimeError
+For more information about chaining mechanics, see :ref:`bltin-exceptions`.
+
.. _tut-userexceptions: