mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
bpo-28415: Note 0 conversion different between Python and C (#885)
This commit is contained in:
parent
a90b990480
commit
88c38b32b7
2 changed files with 48 additions and 42 deletions
|
@ -72,29 +72,29 @@ called with a non-bytes parameter.
|
|||
| :attr:`%c` | int | A single byte, |
|
||||
| | | represented as a C int. |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%d` | int | Exactly equivalent to |
|
||||
| | | ``printf("%d")``. |
|
||||
| :attr:`%d` | int | Equivalent to |
|
||||
| | | ``printf("%d")``. [1]_ |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%u` | unsigned int | Exactly equivalent to |
|
||||
| | | ``printf("%u")``. |
|
||||
| :attr:`%u` | unsigned int | Equivalent to |
|
||||
| | | ``printf("%u")``. [1]_ |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%ld` | long | Exactly equivalent to |
|
||||
| | | ``printf("%ld")``. |
|
||||
| :attr:`%ld` | long | Equivalent to |
|
||||
| | | ``printf("%ld")``. [1]_ |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%lu` | unsigned long | Exactly equivalent to |
|
||||
| | | ``printf("%lu")``. |
|
||||
| :attr:`%lu` | unsigned long | Equivalent to |
|
||||
| | | ``printf("%lu")``. [1]_ |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%zd` | Py_ssize_t | Exactly equivalent to |
|
||||
| | | ``printf("%zd")``. |
|
||||
| :attr:`%zd` | Py_ssize_t | Equivalent to |
|
||||
| | | ``printf("%zd")``. [1]_ |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%zu` | size_t | Exactly equivalent to |
|
||||
| | | ``printf("%zu")``. |
|
||||
| :attr:`%zu` | size_t | Equivalent to |
|
||||
| | | ``printf("%zu")``. [1]_ |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%i` | int | Exactly equivalent to |
|
||||
| | | ``printf("%i")``. |
|
||||
| :attr:`%i` | int | Equivalent to |
|
||||
| | | ``printf("%i")``. [1]_ |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%x` | int | Exactly equivalent to |
|
||||
| | | ``printf("%x")``. |
|
||||
| :attr:`%x` | int | Equivalent to |
|
||||
| | | ``printf("%x")``. [1]_ |
|
||||
+-------------------+---------------+--------------------------------+
|
||||
| :attr:`%s` | const char\* | A null-terminated C character |
|
||||
| | | array. |
|
||||
|
@ -111,6 +111,9 @@ called with a non-bytes parameter.
|
|||
An unrecognized format character causes all the rest of the format string to be
|
||||
copied as-is to the result object, and any extra arguments discarded.
|
||||
|
||||
.. [1] For integer specifiers (d, u, ld, lu, zd, zu, i, x): the 0-conversion
|
||||
flag has effect even when a precision is given.
|
||||
|
||||
|
||||
.. c:function:: PyObject* PyBytes_FromFormatV(const char *format, va_list vargs)
|
||||
|
||||
|
|
|
@ -451,44 +451,44 @@ APIs:
|
|||
| :attr:`%c` | int | A single character, |
|
||||
| | | represented as a C int. |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%d` | int | Exactly equivalent to |
|
||||
| | | ``printf("%d")``. |
|
||||
| :attr:`%d` | int | Equivalent to |
|
||||
| | | ``printf("%d")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%u` | unsigned int | Exactly equivalent to |
|
||||
| | | ``printf("%u")``. |
|
||||
| :attr:`%u` | unsigned int | Equivalent to |
|
||||
| | | ``printf("%u")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%ld` | long | Exactly equivalent to |
|
||||
| | | ``printf("%ld")``. |
|
||||
| :attr:`%ld` | long | Equivalent to |
|
||||
| | | ``printf("%ld")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%li` | long | Exactly equivalent to |
|
||||
| | | ``printf("%li")``. |
|
||||
| :attr:`%li` | long | Equivalent to |
|
||||
| | | ``printf("%li")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%lu` | unsigned long | Exactly equivalent to |
|
||||
| | | ``printf("%lu")``. |
|
||||
| :attr:`%lu` | unsigned long | Equivalent to |
|
||||
| | | ``printf("%lu")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%lld` | long long | Exactly equivalent to |
|
||||
| | | ``printf("%lld")``. |
|
||||
| :attr:`%lld` | long long | Equivalent to |
|
||||
| | | ``printf("%lld")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%lli` | long long | Exactly equivalent to |
|
||||
| | | ``printf("%lli")``. |
|
||||
| :attr:`%lli` | long long | Equivalent to |
|
||||
| | | ``printf("%lli")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%llu` | unsigned long long | Exactly equivalent to |
|
||||
| | | ``printf("%llu")``. |
|
||||
| :attr:`%llu` | unsigned long long | Equivalent to |
|
||||
| | | ``printf("%llu")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%zd` | Py_ssize_t | Exactly equivalent to |
|
||||
| | | ``printf("%zd")``. |
|
||||
| :attr:`%zd` | Py_ssize_t | Equivalent to |
|
||||
| | | ``printf("%zd")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%zi` | Py_ssize_t | Exactly equivalent to |
|
||||
| | | ``printf("%zi")``. |
|
||||
| :attr:`%zi` | Py_ssize_t | Equivalent to |
|
||||
| | | ``printf("%zi")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%zu` | size_t | Exactly equivalent to |
|
||||
| | | ``printf("%zu")``. |
|
||||
| :attr:`%zu` | size_t | Equivalent to |
|
||||
| | | ``printf("%zu")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%i` | int | Exactly equivalent to |
|
||||
| | | ``printf("%i")``. |
|
||||
| :attr:`%i` | int | Equivalent to |
|
||||
| | | ``printf("%i")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%x` | int | Exactly equivalent to |
|
||||
| | | ``printf("%x")``. |
|
||||
| :attr:`%x` | int | Equivalent to |
|
||||
| | | ``printf("%x")``. [1]_ |
|
||||
+-------------------+---------------------+--------------------------------+
|
||||
| :attr:`%s` | const char\* | A null-terminated C character |
|
||||
| | | array. |
|
||||
|
@ -530,6 +530,9 @@ APIs:
|
|||
characters for ``"%A"``, ``"%U"``, ``"%S"``, ``"%R"`` and ``"%V"``
|
||||
(if the ``PyObject*`` argument is not NULL).
|
||||
|
||||
.. [1] For integer specifiers (d, u, ld, li, lu, lld, lli, llu, zd, zi,
|
||||
zu, i, x): the 0-conversion flag has effect even when a precision is given.
|
||||
|
||||
.. versionchanged:: 3.2
|
||||
Support for ``"%lld"`` and ``"%llu"`` added.
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue