gh-122767: document "new style" formatting for complexes (GH-122848)

Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
This commit is contained in:
Sergey B Kirpichev 2024-10-29 17:36:18 +03:00 committed by GitHub
parent faa3272fb8
commit 0bbbe15f56
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 15 additions and 5 deletions

View File

@ -350,8 +350,9 @@ The meaning of the various alignment options is as follows:
| ``'='`` | Forces the padding to be placed after the sign (if any) | | ``'='`` | Forces the padding to be placed after the sign (if any) |
| | but before the digits. This is used for printing fields | | | but before the digits. This is used for printing fields |
| | in the form '+000000120'. This alignment option is only | | | in the form '+000000120'. This alignment option is only |
| | valid for numeric types. It becomes the default for | | | valid for numeric types, excluding :class:`complex`. |
| | numbers when '0' immediately precedes the field width. | | | It becomes the default for numbers when '0' immediately |
| | precedes the field width. |
+---------+----------------------------------------------------------+ +---------+----------------------------------------------------------+
| ``'^'`` | Forces the field to be centered within the available | | ``'^'`` | Forces the field to be centered within the available |
| | space. | | | space. |
@ -432,9 +433,9 @@ including any prefixes, separators, and other formatting characters.
If not specified, then the field width will be determined by the content. If not specified, then the field width will be determined by the content.
When no explicit alignment is given, preceding the *width* field by a zero When no explicit alignment is given, preceding the *width* field by a zero
(``'0'``) character enables (``'0'``) character enables sign-aware zero-padding for numeric types,
sign-aware zero-padding for numeric types. This is equivalent to a *fill* excluding :class:`complex`. This is equivalent to a *fill* character of
character of ``'0'`` with an *alignment* type of ``'='``. ``'0'`` with an *alignment* type of ``'='``.
.. versionchanged:: 3.10 .. versionchanged:: 3.10
Preceding the *width* field by ``'0'`` no longer affects the default Preceding the *width* field by ``'0'`` no longer affects the default
@ -588,6 +589,15 @@ The available presentation types for :class:`float` and
| | as altered by the other format modifiers. | | | as altered by the other format modifiers. |
+---------+----------------------------------------------------------+ +---------+----------------------------------------------------------+
The available presentation types for :class:`complex` are the same as those for
:class:`float` (``'%'`` is not allowed). Both the real and imaginary components
of a complex number are formatted as floating-point numbers, according to the
specified presentation type. They are separated by the mandatory sign of the
imaginary part, the latter being terminated by a ``j`` suffix. If the presentation
type is missing, the result will match the output of :func:`str` (complex numbers with
a non-zero real part are also surrounded by parentheses), possibly altered by
other format modifiers.
.. _formatexamples: .. _formatexamples: