diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -629,14 +629,19 @@
to provide elaborate line editing and history features.
-.. function:: int([number | string[, base]])
+.. function:: int(x=0)
+ int(x, base=10)
- Convert a number or string to an integer. If no arguments are given, return
- ``0``. If a number is given, return ``number.__int__()``. Conversion of
- floating point numbers to integers truncates towards zero. A string must be
- a base-radix integer literal optionally preceded by '+' or '-' (with no space
- in between) and optionally surrounded by whitespace. A base-n literal
- consists of the digits 0 to n-1, with 'a' to 'z' (or 'A' to 'Z') having
+ Convert a number or string *x* to an integer, or return ``0`` if no
+ arguments are given. If *x* is a number, return :meth:`x.__int__()
+ `. For floating point numbers, this truncates towards zero.
+
+ If *x* is not a number or if *base* is given, then *x* must be a string,
+ :class:`bytes`, or :class:`bytearray` instance representing an :ref:`integer
+ literal ` in radix *base*. Optionally, the literal can be
+ preceded by ``+`` or ``-`` (with no space in between) and surrounded by
+ whitespace. A base-n literal consists of the digits 0 to n-1, with ``a``
+ to ``z`` (or ``A`` to ``Z``) having
values 10 to 35. The default *base* is 10. The allowed values are 0 and 2-36.
Base-2, -8, and -16 literals can be optionally prefixed with ``0b``/``0B``,
``0o``/``0O``, or ``0x``/``0X``, as with integer literals in code. Base 0