]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.13] Fix typos and grammar errors across documentation (GH-144709) (#144804)
authorStan Ulbrych <89152624+StanFromIreland@users.noreply.github.com>
Tue, 17 Feb 2026 12:56:29 +0000 (12:56 +0000)
committerGitHub <noreply@github.com>
Tue, 17 Feb 2026 12:56:29 +0000 (12:56 +0000)
(cherry picked from commit 3718f4be60ebb0725b35f597a9de3f7a93ba9f72)

Co-authored-by: Ronald Eddy Jr <ronald_eddy@yahoo.com>
34 files changed:
Doc/bugs.rst
Doc/c-api/float.rst
Doc/c-api/init.rst
Doc/c-api/init_config.rst
Doc/c-api/intro.rst
Doc/c-api/structures.rst
Doc/c-api/veryhigh.rst
Doc/deprecations/pending-removal-in-3.15.rst
Doc/glossary.rst
Doc/library/mailbox.rst
Doc/library/multiprocessing.rst
Doc/library/os.rst
Doc/library/pickle.rst
Doc/library/pyexpat.rst
Doc/library/resource.rst
Doc/library/secrets.rst
Doc/library/select.rst
Doc/library/selectors.rst
Doc/library/shelve.rst
Doc/library/shlex.rst
Doc/library/shutil.rst
Doc/library/signal.rst
Doc/library/site.rst
Doc/library/socket.rst
Doc/library/sqlite3.rst
Doc/library/sys.rst
Doc/library/trace.rst
Doc/library/tracemalloc.rst
Doc/library/typing.rst
Doc/library/xml.dom.minidom.rst
Doc/library/xmlrpc.server.rst
Doc/tutorial/classes.rst
Doc/tutorial/controlflow.rst
Doc/tutorial/whatnow.rst

index 1d27579e53f4ef5b395b2b366df6a817f375677a..9f2b9876ba51dc9a208938f35205440d5fc4fb21 100644 (file)
@@ -9,7 +9,7 @@ stability.  In order to maintain this reputation, the developers would like to
 know of any deficiencies you find in Python.
 
 It can be sometimes faster to fix bugs yourself and contribute patches to
-Python as it streamlines the process and involves less people. Learn how to
+Python as it streamlines the process and involves fewer people. Learn how to
 :ref:`contribute <contributing-to-python>`.
 
 Documentation bugs
index d5b1c2334592b10c258b5d15d835f10f4524e8e8..5a2dc7ecc07db574a6ac972f334e721e1a60bef7 100644 (file)
@@ -80,7 +80,7 @@ Floating-Point Objects
 
 .. c:macro:: Py_INFINITY
 
-   This macro expands a to constant expression of type :c:expr:`double`, that
+   This macro expands to a constant expression of type :c:expr:`double`, that
    represents the positive infinity.
 
    On most platforms, this is equivalent to the :c:macro:`!INFINITY` macro from
@@ -89,7 +89,7 @@ Floating-Point Objects
 
 .. c:macro:: Py_NAN
 
-   This macro expands a to constant expression of type :c:expr:`double`, that
+   This macro expands to a constant expression of type :c:expr:`double`, that
    represents a quiet not-a-number (qNaN) value.
 
    On most platforms, this is equivalent to the :c:macro:`!NAN` macro from
index af46325f7c9516f8ff73a59b847c1d7756a9754c..8e0c2ce6444da82a09fd62d7103db6f77132ed40 100644 (file)
@@ -1463,7 +1463,7 @@ All of the following functions must be called after :c:func:`Py_Initialize`.
 
    Get the current interpreter.
 
-   Issue a fatal error if there no current Python thread state or no current
+   Issue a fatal error if there is no current Python thread state or no current
    interpreter. It cannot return NULL.
 
    The caller must hold the GIL.
@@ -2051,7 +2051,7 @@ Python-level trace functions in previous versions.
    *what* when after any bytecode is processed after which the exception becomes
    set within the frame being executed.  The effect of this is that as exception
    propagation causes the Python stack to unwind, the callback is called upon
-   return to each frame as the exception propagates.  Only trace functions receives
+   return to each frame as the exception propagates.  Only trace functions receive
    these events; they are not needed by the profiler.
 
 
@@ -2179,7 +2179,7 @@ Reference tracing
    the tracer function is called. Return ``0`` on success. Set an exception and
    return ``-1`` on error.
 
-   Not that tracer functions **must not** create Python objects inside or
+   Note that tracer functions **must not** create Python objects inside or
    otherwise the call will be re-entrant. The tracer also **must not** clear
    any existing exception or set an exception.  The GIL will be held every time
    the tracer function is called.
index 612aa2aa7112536b5038f6dc9f69df64f4aed6ba..c34f1e03c875f7bb926f75d936a706439d0d1add 100644 (file)
@@ -532,7 +532,7 @@ PyConfig
 
    Most ``PyConfig`` methods :ref:`preinitialize Python <c-preinit>` if needed.
    In that case, the Python preinitialization configuration
-   (:c:type:`PyPreConfig`) in based on the :c:type:`PyConfig`. If configuration
+   (:c:type:`PyPreConfig`) is based on the :c:type:`PyConfig`. If configuration
    fields which are in common with :c:type:`PyPreConfig` are tuned, they must
    be set before calling a :c:type:`PyConfig` method:
 
index 23bf419e2a4060a5a7cb71ffcfcace56b428c13a..a49dde40a1c790f9bfd150dc3946bb28cca08df6 100644 (file)
@@ -336,7 +336,7 @@ complete listing.
    avoids a warning about unreachable code.  For example, the macro is
    implemented with ``__builtin_unreachable()`` on GCC in release mode.
 
-   A use for ``Py_UNREACHABLE()`` is following a call a function that
+   A use for ``Py_UNREACHABLE()`` is following a call to a function that
    never returns but that is not declared :c:macro:`_Py_NO_RETURN`.
 
    If a code path is very unlikely code but can be reached under exceptional
index 1688528d99adaacfb0c90ce9fe62ca01d7cb96ac..ca94cf18165fadf6142151f0875c9f9d441eff69 100644 (file)
@@ -365,7 +365,7 @@ There are these calling conventions:
 
 
 These two constants are not used to indicate the calling convention but the
-binding when use with methods of classes.  These may not be used for functions
+binding when used with methods of classes.  These may not be used for functions
 defined for modules.  At most one of these flags may be set for any given
 method.
 
index 7eb9f0b54abd4e16cde8677aea3b442624190507..6256bf7a1454a9a74e1e4dd4b90a856f7344ed80 100644 (file)
@@ -191,7 +191,7 @@ the same library that the Python runtime is using.
    objects *globals* and *locals* with the compiler flags specified by
    *flags*.  *globals* must be a dictionary; *locals* can be any object
    that implements the mapping protocol.  The parameter *start* specifies
-   the start symbol and must one of the :ref:`available start symbols <start-symbols>`.
+   the start symbol and must be one of the :ref:`available start symbols <start-symbols>`.
 
    Returns the result of executing the code as a Python object, or ``NULL`` if an
    exception was raised.
index 0c34f0593fb43ba950917279368193000bac236f..3b0ecb873ecff8b273402ab411584775f3423b35 100644 (file)
@@ -64,7 +64,7 @@ Pending Removal in Python 3.15
 
   * :func:`~threading.RLock` will take no arguments in Python 3.15.
     Passing any arguments has been deprecated since Python 3.14,
-    as the  Python version does not permit any arguments,
+    as the Python version does not permit any arguments,
     but the C version allows any number of positional or keyword arguments,
     ignoring every argument.
 
index 488bcc532587651ac3a66c35d5c7e8eb217ff1b4..07a6ee882eadd5362e6117a0c1a3c5853483d227 100644 (file)
@@ -1281,7 +1281,7 @@ Glossary
          'email.mime.text'
 
    race condition
-      A condition of a program where the its behavior
+      A condition of a program where the behavior
       depends on the relative timing or ordering of events, particularly in
       multi-threaded programs.  Race conditions can lead to
       :term:`non-deterministic` behavior and bugs that are difficult to
index 62e289573c0c7e021cd066c7a359bfc62fbd1730..ed135bf02cb968d0658d4e7bc7e0754b5fa2f6e9 100644 (file)
@@ -1025,7 +1025,7 @@ Supported mailbox formats are Maildir, mbox, MH, Babyl, and MMDF.
    .. method:: remove_flag(flag)
 
       Unset the flag(s) specified by *flag* without changing other flags. To
-      remove more than one flag at a time, *flag* maybe a string of more than
+      remove more than one flag at a time, *flag* may be a string of more than
       one character.  If "info" contains experimental information rather than
       flags, the current "info" is not modified.
 
@@ -1190,7 +1190,7 @@ When a :class:`!MaildirMessage` instance is created based upon a
    .. method:: remove_flag(flag)
 
       Unset the flag(s) specified by *flag* without changing other flags. To
-      remove more than one flag at a time, *flag* maybe a string of more than
+      remove more than one flag at a time, *flag* may be a string of more than
       one character.
 
 When an :class:`!mboxMessage` instance is created based upon a
@@ -1562,7 +1562,7 @@ When a :class:`!BabylMessage` instance is created based upon an
    .. method:: remove_flag(flag)
 
       Unset the flag(s) specified by *flag* without changing other flags. To
-      remove more than one flag at a time, *flag* maybe a string of more than
+      remove more than one flag at a time, *flag* may be a string of more than
       one character.
 
 When an :class:`!MMDFMessage` instance is created based upon a
@@ -1641,7 +1641,7 @@ The following exception classes are defined in the :mod:`!mailbox` module:
 
 .. exception:: Error()
 
-   The based class for all other module-specific exceptions.
+   The base class for all other module-specific exceptions.
 
 
 .. exception:: NoSuchMailboxError()
@@ -1661,7 +1661,7 @@ The following exception classes are defined in the :mod:`!mailbox` module:
 
    Raised when some mailbox-related condition beyond the control of the program
    causes it to be unable to proceed, such as when failing to acquire a lock that
-   another program already holds a lock, or when a uniquely generated file name
+   another program already holds, or when a uniquely generated file name
    already exists.
 
 
index 70e493b3d4dc752a39276c5c824e1a8323d9727e..0605a0c03784f17c2971adf797f63c4943549449 100644 (file)
@@ -1189,7 +1189,7 @@ Miscellaneous
 
    Set the path of the Python interpreter to use when starting a child process.
    (By default :data:`sys.executable` is used).  Embedders will probably need to
-   do some thing like ::
+   do something like ::
 
       set_executable(os.path.join(sys.exec_prefix, 'pythonw.exe'))
 
@@ -2385,7 +2385,7 @@ with the :class:`Pool` class.
       duration of the Pool's work queue. A frequent pattern found in other
       systems (such as Apache, mod_wsgi, etc) to free resources held by
       workers is to allow a worker within a pool to complete only a set
-      amount of work before being exiting, being cleaned up and a new
+      amount of work before exiting, being cleaned up and a new
       process spawned to replace the old one. The *maxtasksperchild*
       argument to the :class:`Pool` exposes this ability to the end user.
 
index 0177887110e0e65e53b58ec2db1827f8b950c1da..f6747d50ef928f25b83008bf71a8d3153f345b83 100644 (file)
@@ -3916,7 +3916,7 @@ Naturally, they are all only available on Linux.
    except it includes any time that the system is suspended.
 
    The file descriptor's behaviour can be modified by specifying a *flags* value.
-   Any of the following variables may used, combined using bitwise OR
+   Any of the following variables may be used, combined using bitwise OR
    (the ``|`` operator):
 
    - :const:`TFD_NONBLOCK`
@@ -3948,7 +3948,7 @@ Naturally, they are all only available on Linux.
    *fd* must be a valid timer file descriptor.
 
    The timer's behaviour can be modified by specifying a *flags* value.
-   Any of the following variables may used, combined using bitwise OR
+   Any of the following variables may be used, combined using bitwise OR
    (the ``|`` operator):
 
    - :const:`TFD_TIMER_ABSTIME`
@@ -4017,7 +4017,7 @@ Naturally, they are all only available on Linux.
 
    Return a two-item tuple of floats (``next_expiration``, ``interval``).
 
-   ``next_expiration`` denotes the relative time until next the timer next fires,
+   ``next_expiration`` denotes the relative time until the timer next fires,
    regardless of if the :const:`TFD_TIMER_ABSTIME` flag is set.
 
    ``interval`` denotes the timer's interval.
index 82c1db8cc686f6223922db9731d62448b8aab4c6..1273c777b73beb23f39bc530ac7b979a9a634e28 100644 (file)
@@ -503,7 +503,7 @@ The following types can be pickled:
 
 * classes accessible from the top level of a module;
 
-* instances of such classes whose the result of calling :meth:`~object.__getstate__`
+* instances of such classes for which the result of calling :meth:`~object.__getstate__`
   is picklable  (see section :ref:`pickle-inst` for details).
 
 Attempts to pickle unpicklable objects will raise the :exc:`PicklingError`
@@ -572,7 +572,7 @@ methods:
 
 .. method:: object.__getnewargs_ex__()
 
-   In protocols 2 and newer, classes that implements the
+   In protocols 2 and newer, classes that implement the
    :meth:`__getnewargs_ex__` method can dictate the values passed to the
    :meth:`__new__` method upon unpickling.  The method must return a pair
    ``(args, kwargs)`` where *args* is a tuple of positional arguments
index c46870a90a2523f3958143e2f1cf2127e1b5fd96..b655659256bc8e734bb620e1c9a5b3c4a7f41e14 100644 (file)
@@ -409,7 +409,7 @@ otherwise stated.
    ...``).  The *doctypeName* is provided exactly as presented.  The *systemId* and
    *publicId* parameters give the system and public identifiers if specified, or
    ``None`` if omitted.  *has_internal_subset* will be true if the document
-   contains and internal document declaration subset. This requires Expat version
+   contains an internal document declaration subset. This requires Expat version
    1.2 or newer.
 
 
index 512f0852dd53336a613053d0b1adeaa7b4db1dc4..52bfef59ac4f681c9a3a94f3f454eb5145331f30 100644 (file)
@@ -303,9 +303,9 @@ These functions are used to retrieve resource usage information:
       print(getrusage(RUSAGE_SELF))
 
    The fields of the return value each describe how a particular system resource
-   has been used, e.g. amount of time spent running is user mode or number of times
+   has been used, e.g. amount of time spent running in user mode or number of times
    the process was swapped out of main memory. Some values are dependent on the
-   clock tick internal, e.g. the amount of memory the process is using.
+   clock tick interval, e.g. the amount of memory the process is using.
 
    For backward compatibility, the return value is also accessible as a tuple of 16
    elements.
index 4cc9f53b71eb829a9dfd9819727798f34716c404..fadfc60fe93775fc22939c4dbdf9682b367914fa 100644 (file)
@@ -120,7 +120,7 @@ argument to the various ``token_*`` functions.  That argument is taken
 as the number of bytes of randomness to use.
 
 Otherwise, if no argument is provided, or if the argument is ``None``,
-the ``token_*`` functions uses :const:`DEFAULT_ENTROPY` instead.
+the ``token_*`` functions use :const:`DEFAULT_ENTROPY` instead.
 
 .. data:: DEFAULT_ENTROPY
 
index 2e3db8ebb324b598b1c6aff61f4880fc74b43a2c..f7eba22bb6078b3639b4bc0e864f6a67a872afdc 100644 (file)
@@ -171,7 +171,7 @@ The module defines the following:
    The minimum number of bytes which can be written without blocking to a pipe
    when the pipe has been reported as ready for writing by :func:`~select.select`,
    :func:`!poll` or another interface in this module.  This doesn't apply
-   to other kind of file-like objects such as sockets.
+   to other kinds of file-like objects such as sockets.
 
    This value is guaranteed by POSIX to be at least 512.
 
@@ -223,7 +223,7 @@ object.
    implement :meth:`!fileno`, so they can also be used as the argument.
 
    *eventmask* is an optional bitmask describing the type of events you want to
-   check for. The constants are the same that with :c:func:`!poll`
+   check for. The constants are the same as with :c:func:`!poll`
    object. The default value is a combination of the constants :const:`POLLIN`,
    :const:`POLLPRI`, and :const:`POLLOUT`.
 
@@ -238,7 +238,7 @@ object.
 .. method:: devpoll.modify(fd[, eventmask])
 
    This method does an :meth:`unregister` followed by a
-   :meth:`register`. It is (a bit) more efficient that doing the same
+   :meth:`register`. It is (a bit) more efficient than doing the same
    explicitly.
 
 
@@ -555,9 +555,9 @@ https://man.freebsd.org/cgi/man.cgi?query=kqueue&sektion=2
    +---------------------------+---------------------------------------------+
    | :const:`KQ_EV_DELETE`     | Removes an event from the queue             |
    +---------------------------+---------------------------------------------+
-   | :const:`KQ_EV_ENABLE`     | Permitscontrol() to returns the event       |
+   | :const:`KQ_EV_ENABLE`     | Permits control() to return the event       |
    +---------------------------+---------------------------------------------+
-   | :const:`KQ_EV_DISABLE`    | Disablesevent                               |
+   | :const:`KQ_EV_DISABLE`    | Disables event                              |
    +---------------------------+---------------------------------------------+
    | :const:`KQ_EV_ONESHOT`    | Removes event after first occurrence        |
    +---------------------------+---------------------------------------------+
index ee556f1f3cecae6d26edcaa4e7875fff54b9d7e9..2d523a9d2ea440bbbea9df067575da81a4abc68f 100644 (file)
@@ -54,7 +54,7 @@ Classes hierarchy::
 
 
 In the following, *events* is a bitwise mask indicating which I/O events should
-be waited for on a given file object. It can be a combination of the modules
+be waited for on a given file object. It can be a combination of the module's
 constants below:
 
    +-----------------------+-----------------------------------------------+
index 6e74a59b82b8ec6c1bbfd17e0bfca1439ca39138..274eae4ceff59b2ca9960cbe4e4e24cafe15138a 100644 (file)
@@ -65,7 +65,7 @@ lots of shared  sub-objects.  The keys are ordinary strings.
    to load a shelf from an untrusted source.  Like with pickle, loading a shelf
    can execute arbitrary code.
 
-Shelf objects support most of methods and operations supported by dictionaries
+Shelf objects support most of the methods and operations supported by dictionaries
 (except copying, constructors and operators ``|`` and ``|=``).  This eases the
 transition from dictionary based scripts to those requiring persistent storage.
 
index a96f0864dc12604571ea01cdf148e6310fab78f2..81ccaa62b4c987d4b1147a002ee28b6999c82f2e 100644 (file)
@@ -343,7 +343,7 @@ variables which either control lexical analysis or can be used for debugging:
 Parsing Rules
 -------------
 
-When operating in non-POSIX mode, :class:`~shlex.shlex` will try to obey to the
+When operating in non-POSIX mode, :class:`~shlex.shlex` will try to obey the
 following rules.
 
 * Quote characters are not recognized within words (``Do"Not"Separate`` is
@@ -366,7 +366,7 @@ following rules.
 
 * It's not possible to parse empty strings, even if quoted.
 
-When operating in POSIX mode, :class:`~shlex.shlex` will try to obey to the
+When operating in POSIX mode, :class:`~shlex.shlex` will try to obey the
 following parsing rules.
 
 * Quotes are stripped out, and do not separate words (``"Do"Not"Separate"`` is
@@ -382,7 +382,7 @@ following parsing rules.
 * Enclosing characters in quotes which are part of
   :attr:`~shlex.escapedquotes` (e.g. ``'"'``) preserves the literal value
   of all characters within the quotes, with the exception of the characters
-  mentioned in :attr:`~shlex.escape`.  The escape characters retain its
+  mentioned in :attr:`~shlex.escape`.  The escape characters retain their
   special meaning only when followed by the quote in use, or the escape
   character itself. Otherwise the escape character will be considered a
   normal character.
index 3c4a3ed0cbd5d29d333d73e02db01dc63c511f83..4e4d7927da7703764a70a40640881bc8bc4510b8 100644 (file)
@@ -534,7 +534,7 @@ instead of 64 KiB) and a :func:`memoryview`-based variant of
 :func:`shutil.copyfileobj` is used.
 
 If the fast-copy operation fails and no data was written in the destination
-file then shutil will silently fallback on using less efficient
+file then shutil will silently fall back to less efficient
 :func:`copyfileobj` function internally.
 
 .. versionchanged:: 3.8
index e37ca21d2595d6fea5a7cc18b21abbce18066c78..60b8cbc2a6145917af29208a5515b8ddd47a9ee8 100644 (file)
@@ -36,7 +36,7 @@ Execution of Python signal handlers
 A Python signal handler does not get executed inside the low-level (C) signal
 handler.  Instead, the low-level signal handler sets a flag which tells the
 :term:`virtual machine` to execute the corresponding Python signal handler
-at a later point(for example at the next :term:`bytecode` instruction).
+at a later point (for example, at the next :term:`bytecode` instruction).
 This has consequences:
 
 * It makes little sense to catch synchronous errors like :const:`SIGFPE` or
@@ -97,13 +97,13 @@ The signal module defines three enums:
 
 .. class:: Handlers
 
-   :class:`enum.IntEnum` collection the constants :const:`SIG_DFL` and :const:`SIG_IGN`.
+   :class:`enum.IntEnum` collection of the constants :const:`SIG_DFL` and :const:`SIG_IGN`.
 
    .. versionadded:: 3.5
 
 .. class:: Sigmasks
 
-   :class:`enum.IntEnum` collection the constants :const:`SIG_BLOCK`, :const:`SIG_UNBLOCK` and :const:`SIG_SETMASK`.
+   :class:`enum.IntEnum` collection of the constants :const:`SIG_BLOCK`, :const:`SIG_UNBLOCK` and :const:`SIG_SETMASK`.
 
    .. availability:: Unix.
 
index 484c3f8af583894e7ddc90797ee12057185cb349..f8b51bc86eb9602ce4d8fc2810651e2ca2178140 100644 (file)
@@ -132,7 +132,7 @@ After these path manipulations, an attempt is made to import a module named
 It is typically created by a system administrator in the site-packages
 directory.  If this import fails with an :exc:`ImportError` or its subclass
 exception, and the exception's :attr:`~ImportError.name`
-attribute equals to ``'sitecustomize'``,
+attribute equals ``'sitecustomize'``,
 it is silently ignored.  If Python is started without output streams available, as
 with :file:`pythonw.exe` on Windows (which is used by default to start IDLE),
 attempted output from :mod:`sitecustomize` is ignored.  Any other exception
@@ -149,7 +149,7 @@ which can perform arbitrary user-specific customizations, if
 user site-packages directory (see below), which is part of ``sys.path`` unless
 disabled by :option:`-s`.  If this import fails with an :exc:`ImportError` or
 its subclass exception, and the exception's :attr:`~ImportError.name`
-attribute equals to ``'usercustomize'``, it is silently ignored.
+attribute equals ``'usercustomize'``, it is silently ignored.
 
 Note that for some non-Unix systems, ``sys.prefix`` and ``sys.exec_prefix`` are
 empty, and the path manipulations are skipped; however the import of
@@ -165,7 +165,7 @@ Readline configuration
 On systems that support :mod:`readline`, this module will also import and
 configure the :mod:`rlcompleter` module, if Python is started in
 :ref:`interactive mode <tut-interactive>` and without the :option:`-S` option.
-The default behavior is enable tab-completion and to use
+The default behavior is to enable tab completion and to use
 :file:`~/.python_history` as the history save file.  To disable it, delete (or
 override) the :data:`sys.__interactivehook__` attribute in your
 :mod:`sitecustomize` or :mod:`usercustomize` module or your
index cac619ea3942cc175d01c4b1c3e6ca66cc91f666..c59a090c200966fee40bd30ca9c0b7a27b8f7939 100644 (file)
@@ -118,10 +118,10 @@ created.  Socket addresses are represented as follows:
   ``'can0'``. The network interface name ``''`` can be used to receive packets
   from all network interfaces of this family.
 
-  - :const:`CAN_ISOTP` protocol require a tuple ``(interface, rx_addr, tx_addr)``
+  - :const:`CAN_ISOTP` protocol requires a tuple ``(interface, rx_addr, tx_addr)``
     where both additional parameters are unsigned long integer that represent a
     CAN identifier (standard or extended).
-  - :const:`CAN_J1939` protocol require a tuple ``(interface, name, pgn, addr)``
+  - :const:`CAN_J1939` protocol requires a tuple ``(interface, name, pgn, addr)``
     where additional parameters are 64-bit unsigned integer representing the
     ECU name, a 32-bit unsigned integer representing the Parameter Group Number
     (PGN), and an 8-bit integer representing the address.
@@ -922,7 +922,7 @@ The :mod:`socket` module also offers various network-related services:
 .. function:: close(fd)
 
    Close a socket file descriptor. This is like :func:`os.close`, but for
-   sockets. On some platforms (most noticeable Windows) :func:`os.close`
+   sockets. On some platforms (most notably Windows) :func:`os.close`
    does not work for socket file descriptors.
 
    .. versionadded:: 3.7
@@ -1478,7 +1478,7 @@ to sockets.
    address family --- see above.)
 
    If the connection is interrupted by a signal, the method waits until the
-   connection completes, or raise a :exc:`TimeoutError` on timeout, if the
+   connection completes, or raises a :exc:`TimeoutError` on timeout, if the
    signal handler doesn't raise an exception and the socket is blocking or has
    a timeout. For non-blocking sockets, the method raises an
    :exc:`InterruptedError` exception if the connection is interrupted by a
@@ -1981,11 +1981,11 @@ to sockets.
    Set the value of the given socket option (see the Unix manual page
    :manpage:`setsockopt(2)`).  The needed symbolic constants are defined in this
    module (:ref:`!SO_\* etc. <socket-unix-constants>`).  The value can be an integer,
-   ``None`` or a :term:`bytes-like object` representing a buffer. In the later
+   ``None`` or a :term:`bytes-like object` representing a buffer. In the latter
    case it is up to the caller to ensure that the bytestring contains the
    proper bits (see the optional built-in module :mod:`struct` for a way to
    encode C structures as bytestrings). When *value* is set to ``None``,
-   *optlen* argument is required. It's equivalent to call :c:func:`setsockopt` C
+   *optlen* argument is required. It's equivalent to calling :c:func:`setsockopt` C
    function with ``optval=NULL`` and ``optlen=optlen``.
 
    .. versionchanged:: 3.5
index 39da468f142ae54adc49cabc60a3115528f4270f..cda74384d204475f8d6032f1cb2126cd13c32a19 100644 (file)
@@ -289,7 +289,7 @@ Module functions
        Set it to any combination (using ``|``, bitwise or) of
        :const:`PARSE_DECLTYPES` and :const:`PARSE_COLNAMES`
        to enable this.
-       Column names takes precedence over declared types if both flags are set.
+       Column names take precedence over declared types if both flags are set.
        By default (``0``), type detection is disabled.
 
    :param isolation_level:
index efdf3f59e35bff134fe86895134927035837c991..52ca502012b1570bb2d5a39f36ded1785d3afabc 100644 (file)
@@ -508,7 +508,7 @@ always available. Unless explicitly noted otherwise, all variables are read-only
    in the range 0--127, and produce undefined results otherwise.  Some systems
    have a convention for assigning specific meanings to specific exit codes, but
    these are generally underdeveloped; Unix programs generally use 2 for command
-   line syntax errors and 1 for all other kind of errors.  If another type of
+   line syntax errors and 1 for all other kinds of errors.  If another type of
    object is passed, ``None`` is equivalent to passing zero, and any other
    object is printed to :data:`stderr` and results in an exit code of 1.  In
    particular, ``sys.exit("some error message")`` is a quick way to exit a
index cae94ea08e17e5dbd7e46657af4ce6ff62a6c50b..b73710fd6c082ebc689826919c98742e01377ca3 100644 (file)
@@ -43,7 +43,7 @@ all Python modules imported during the execution into the current directory.
    Display the version of the module and exit.
 
 .. versionadded:: 3.8
-    Added ``--module`` option that allows to run an executable module.
+    Added ``--module`` option that allows running an executable module.
 
 Main options
 ^^^^^^^^^^^^
index 2370d927292eb0e3129a42f01751506981d09bcb..f6b6fad8559c685beef4baf97cd2aec2b75a54b6 100644 (file)
@@ -589,7 +589,7 @@ Snapshot
 
       If *cumulative* is ``True``, cumulate size and count of memory blocks of
       all frames of the traceback of a trace, not only the most recent frame.
-      The cumulative mode can only be used with *key_type* equals to
+      The cumulative mode can only be used with *key_type* equal to
       ``'filename'`` and ``'lineno'``.
 
       The result is sorted from the biggest to the smallest by:
@@ -720,11 +720,10 @@ Traceback
    When a snapshot is taken, tracebacks of traces are limited to
    :func:`get_traceback_limit` frames. See the :func:`take_snapshot` function.
    The original number of frames of the traceback is stored in the
-   :attr:`Traceback.total_nframe` attribute. That allows to know if a traceback
+   :attr:`Traceback.total_nframe` attribute. That allows one to know if a traceback
    has been truncated by the traceback limit.
 
-   The :attr:`Trace.traceback` attribute is an instance of :class:`Traceback`
-   instance.
+   The :attr:`Trace.traceback` attribute is a :class:`Traceback` instance.
 
    .. versionchanged:: 3.7
       Frames are now sorted from the oldest to the most recent, instead of most recent to oldest.
index 23e7b1ac97891d92f127408dca045d34bb6be330..250c861f872c967ffb5f75673bf97a22eaa8f7b7 100644 (file)
@@ -813,7 +813,7 @@ For example, this conforms to :pep:`484`::
        def __len__(self) -> int: ...
        def __iter__(self) -> Iterator[int]: ...
 
-:pep:`544` allows to solve this problem by allowing users to write
+:pep:`544` solves this problem by allowing users to write
 the above code without explicit base classes in the class definition,
 allowing ``Bucket`` to be implicitly considered a subtype of both ``Sized``
 and ``Iterable[int]`` by static type checkers. This is known as
index 9ffedf7366a7b8c8a68f03bcd5a17609126f4b26..5d60ff12cab106fc09dad0eb3bf9e334ca3dd3b8 100644 (file)
@@ -62,7 +62,7 @@ document.
 
 What the :func:`parse` and :func:`parseString` functions do is connect an XML
 parser with a "DOM builder" that can accept parse events from any SAX parser and
-convert them into a DOM tree.  The name of the functions are perhaps misleading,
+convert them into a DOM tree.  The names of the functions are perhaps misleading,
 but are easy to grasp when learning the interfaces.  The parsing of the document
 will be completed before these functions return; it's simply that these
 functions do not provide a parser implementation themselves.
index 2a8f6f8d5fc0de5810c61dafcf7c38fe341ba4aa..c63964f2e6935c8b8d3349ad0e676cb7489e9755 100644 (file)
@@ -230,7 +230,7 @@ a server allowing dotted names and registering a multicall function.
 
   Enabling the *allow_dotted_names* option allows intruders to access your
   module's global variables and may allow intruders to execute arbitrary code on
-  your machine.  Only use this example only within a secure, closed network.
+  your machine.  Only use this example within a secure, closed network.
 
 ::
 
index c4480e90b7243c4c67ce415bbe3f16edcaae928a..2323f4c2484e629dc31777a08251424f7ca31ab1 100644 (file)
@@ -420,7 +420,7 @@ of the class::
     'Buddy'
 
 As discussed in :ref:`tut-object`, shared data can have possibly surprising
-effects with involving :term:`mutable` objects such as lists and dictionaries.
+effects involving :term:`mutable` objects such as lists and dictionaries.
 For example, the *tricks* list in the following code should not be used as a
 class variable because just a single list would be shared by all *Dog*
 instances::
index da70a718fc244173a038b9e714da8664b69e94a1..4e5d8e1ae2d55a76d0f152cbf633fcc787a87b68 100644 (file)
@@ -155,8 +155,8 @@ that takes an iterable is :func:`sum`::
     6
 
 Later we will see more functions that return iterables and take iterables as
-arguments.  In chapter :ref:`tut-structures`, we will discuss in more detail about
-:func:`list`.
+arguments.  In chapter :ref:`tut-structures`, we will discuss :func:`list` in more
+detail.
 
 .. _tut-break:
 
@@ -440,7 +440,7 @@ Several other key features of this statement:
   ``False`` and ``None`` are compared by identity.
 
 - Patterns may use named constants.  These must be dotted names
-  to prevent them from being interpreted as capture variable::
+  to prevent them from being interpreted as capture variables::
 
       from enum import Enum
       class Color(Enum):
@@ -1106,7 +1106,7 @@ Intermezzo: Coding Style
 
 Now that you are about to write longer, more complex pieces of Python, it is a
 good time to talk about *coding style*.  Most languages can be written (or more
-concise, *formatted*) in different styles; some are more readable than others.
+concisely, *formatted*) in different styles; some are more readable than others.
 Making it easy for others to read your code is always a good idea, and adopting
 a nice coding style helps tremendously for that.
 
index 359cf80a7b2ecf856772e26de13e08c930f62285..aae8f29b0077627f34170635068a69efaba3d8be 100644 (file)
@@ -68,6 +68,6 @@ already contain the solution for your problem.
 
 .. rubric:: Footnotes
 
-.. [#] "Cheese Shop" is a Monty Python's sketch: a customer enters a cheese shop,
+.. [#] "Cheese Shop" is a Monty Python sketch: a customer enters a cheese shop,
    but whatever cheese he asks for, the clerk says it's missing.