diff --git a/Doc/library/contextlib.rst b/Doc/library/contextlib.rst
index ed9ebb8..41dfded 100644
--- a/Doc/library/contextlib.rst
+++ b/Doc/library/contextlib.rst
@@ -184,7 +184,7 @@
           files = [stack.enter_context(open(fname)) for fname in filenames]
           # All opened files will automatically be closed at the end of
           # the with statement, even if attempts to open files later
-          # in the list throw an exception
+          # in the list raise an exception
 
    Each instance maintains a stack of registered callbacks that are called in
    reverse order when the instance is closed (either explicitly or implicitly
diff --git a/Doc/library/imaplib.rst b/Doc/library/imaplib.rst
index fefb284..626f661 100644
--- a/Doc/library/imaplib.rst
+++ b/Doc/library/imaplib.rst
@@ -75,7 +75,7 @@
    :class:`ssl.SSLContext` object which allows bundling SSL configuration
    options, certificates and private keys into a single (potentially long-lived)
    structure. Note that the *keyfile*/*certfile* parameters are mutually exclusive with *ssl_context*,
-   a :class:`ValueError` is thrown if *keyfile*/*certfile* is provided along with *ssl_context*.
+   a :class:`ValueError` is raised if *keyfile*/*certfile* is provided along with *ssl_context*.
 
    .. versionchanged:: 3.3
       *ssl_context* parameter added.
diff --git a/Doc/library/os.rst b/Doc/library/os.rst
index 722f7da..027ad70 100644
--- a/Doc/library/os.rst
+++ b/Doc/library/os.rst
@@ -1171,7 +1171,7 @@
    output) specifies which file descriptor should be queried.
 
    If the file descriptor is not connected to a terminal, an :exc:`OSError`
-   is thrown.
+   is raised.
 
    :func:`shutil.get_terminal_size` is the high-level function which
    should normally be used, ``os.get_terminal_size`` is the low-level
@@ -1945,7 +1945,7 @@
    :mod:`os` module permit use of their *dir_fd* parameter.  Different platforms
    provide different functionality, and an option that might work on one might
    be unsupported on another.  For consistency's sakes, functions that support
-   *dir_fd* always allow specifying the parameter, but will throw an exception
+   *dir_fd* always allow specifying the parameter, but will raise an exception
    if the functionality is not actually available.
 
    To check whether a particular function permits use of its *dir_fd*
@@ -1986,7 +1986,7 @@
    descriptor.  Different platforms provide different functionality, and an
    option that might work on one might be unsupported on another.  For
    consistency's sakes, functions that support *fd* always allow specifying
-   the parameter, but will throw an exception if the functionality is not
+   the parameter, but will raise an exception if the functionality is not
    actually available.
 
    To check whether a particular function permits specifying an open file
@@ -2007,7 +2007,7 @@
    platforms provide different functionality, and an option that might work on
    one might be unsupported on another.  For consistency's sakes, functions that
    support *follow_symlinks* always allow specifying the parameter, but will
-   throw an exception if the functionality is not actually available.
+   raise an exception if the functionality is not actually available.
 
    To check whether a particular function permits use of its *follow_symlinks*
    parameter, use the ``in`` operator on ``supports_follow_symlinks``.  As an
