summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorManvisha Kodali <manvishab77@gmail.com>2017-07-06 19:30:58 (GMT)
committerMariatta <Mariatta@users.noreply.github.com>2017-07-06 19:30:58 (GMT)
commit67ba4fa467ffff825d6a0c0a21cc54ff1df2ed1b (patch)
treef2c31ec9a73ee2a89bac9e4b4a3d6f6aa66dca48 /Doc
parent0653fba51c03d20fa4381ba0836acd17fd05b04b (diff)
downloadcpython-67ba4fa467ffff825d6a0c0a21cc54ff1df2ed1b.zip
cpython-67ba4fa467ffff825d6a0c0a21cc54ff1df2ed1b.tar.gz
cpython-67ba4fa467ffff825d6a0c0a21cc54ff1df2ed1b.tar.bz2
bpo-26506: hex() documentation: mention %x % int (GH-2525)
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/functions.rst62
1 files changed, 52 insertions, 10 deletions
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 925da50..4e48e42 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -81,9 +81,24 @@ are always available. They are listed here in alphabetical order.
.. function:: bin(x)
- Convert an integer number to a binary string. The result is a valid Python
- expression. If *x* is not a Python :class:`int` object, it has to define an
- :meth:`__index__` method that returns an integer.
+ Convert an integer number to a binary string prefixed with "0b". The result
+ is a valid Python expression. If *x* is not a Python :class:`int` object, it
+ has to define an :meth:`__index__` method that returns an integer. Some
+ examples:
+
+ >>> bin(3)
+ '0b11'
+ >>> bin(-10)
+ '-0b1010'
+
+ If prefix "0b" is desired or not, you can use either of the following ways.
+
+ >>> format(14, '#b'), format(14, 'b')
+ ('0b1110', '1110')
+ >>> f'{14:#b}', f'{14:b}'
+ ('0b1110', '1110')
+
+ See also :func:`format` for more information.
.. class:: bool([x])
@@ -635,16 +650,26 @@ are always available. They are listed here in alphabetical order.
.. function:: hex(x)
- Convert an integer number to a lowercase hexadecimal string
- prefixed with "0x", for example:
+ Convert an integer number to a lowercase hexadecimal string prefixed with
+ "0x". If x is not a Python :class:`int` object, it has to define an
+ __index__() method that returns an integer. Some examples:
>>> hex(255)
'0xff'
>>> hex(-42)
'-0x2a'
- If x is not a Python :class:`int` object, it has to define an __index__()
- method that returns an integer.
+ If you want to convert an integer number to an uppercase or lower hexadecimal
+ string with prefix or not, you can use either of the following ways:
+
+ >>> '%#x' % 255, '%x' % 255, '%X' % 255
+ ('0xff', 'ff', 'FF')
+ >>> format(255, '#x'), format(255, 'x'), format(255, 'X')
+ ('0xff', 'ff', 'FF')
+ >>> f'{255:#x}', f'{255:x}', f'{255:X}'
+ ('0xff', 'ff', 'FF')
+
+ See also :func:`format` for more information.
See also :func:`int` for converting a hexadecimal string to an
integer using a base of 16.
@@ -878,10 +903,27 @@ are always available. They are listed here in alphabetical order.
.. function:: oct(x)
- Convert an integer number to an octal string. The result is a valid Python
- expression. If *x* is not a Python :class:`int` object, it has to define an
- :meth:`__index__` method that returns an integer.
+ Convert an integer number to an octal string prefixed with "0o". The result
+ is a valid Python expression. If *x* is not a Python :class:`int` object, it
+ has to define an :meth:`__index__` method that returns an integer. For
+ example:
+
+ >>> oct(8)
+ '0o10'
+ >>> oct(-56)
+ '-0o70'
+
+ If you want to convert an integer number to octal string either with prefix
+ "0o" or not, you can use either of the following ways.
+
+ >>> '%#o' % 10, '%o' % 10
+ ('0o12', '12')
+ >>> format(10, '#o'), format(10, 'o')
+ ('0o12', '12')
+ >>> f'{10:#o}', f'{10:o}'
+ ('0o12', '12')
+ See also :func:`format` for more information.
.. index::
single: file object; open() built-in function