Commit graph

128 commits

Author SHA1 Message Date
John Belmonte
b0b836b20c
bpo-45995: add "z" format specifer to coerce negative 0 to zero (GH-30049)
Add "z" format specifier to coerce negative 0 to zero.

See https://github.com/python/cpython/issues/90153 (originally https://bugs.python.org/issue45995) for discussion.
This covers `str.format()` and f-strings.  Old-style string interpolation is not supported.

Co-authored-by: Mark Dickinson <dickinsm@gmail.com>
2022-04-11 15:34:18 +01:00
John Belmonte
1d6ce67c29
Corrections to format precision description. (GH-31291)
* `precision` field is a decimal integer
  * clarify that stated limitations are on presentation type
    rather than input value type.  Especially misleading is
    "precision is not allowed for integer values", since integer
    value input to a format like `.1f` is fine.
  * regarding max field size, replace "non-number" with "string",
    which is the only non-numeric presentation type

Automerge-Triggered-By: GH:ericvsmith
2022-02-13 16:00:32 -08:00
Ben Kehoe
dce642f244
bpo-46307: Add string.Template.get_identifiers() method (GH-30493)
Add `string.Template.get_identifiers()` method that returns the identifiers within the template. By default, raises an error if it encounters an invalid identifier (like `substitute()`). The keyword-only argument `raise_on_invalid` can be set to `False` to ignore invalid identifiers (like `safe_substitute()`).

Automerge-Triggered-By: GH:warsaw
2022-01-11 11:15:42 -08:00
Tal Einat
92ceb1c840
docs: clearly document that ":#X" string formatting results in "0X..." (GH-25941)
* clearly document that ":#X" string formatting results in "0X..."

* put back the "serial comma"
2021-05-06 12:27:29 -07:00
Irit Katriel
fb1d01b963
bpo-31907: [doc] clarify that str.format() does not support arbitrary expressions (#25053) 2021-03-28 16:47:20 -04:00
Serhiy Storchaka
cf19cc3b92
bpo-27772: Make preceding width with 0 valid in string format. (GH-11270)
Previously it was an error with confusing error message.
2021-01-25 11:56:33 +02:00
Mark Dickinson
886b2e5c7a
bpo-39096: Format specification documentation fixes for numeric types (GH-23575) 2020-12-18 10:24:06 +01:00
Mark Dickinson
c642374b3e
bpo-39096: Improve description of 'e', 'f' and 'g' presentation types (#23537)
* Improve description of 'e', 'f' and 'g' presentation types

* Drop the 'E' from Scientific 'E' notation; remove >= 0 qualifications

* Fix false statement that the alternate form is valid for Decimal

* Nitpick: remove the Harvard/Oxford comma

* Add note that the decimal point is also removed if no digits follow it, except in alternate form
2020-11-29 09:34:36 +00:00
Victor Stinner
8af239eacf
bpo-41762: Fix usage of productionlist markup in the doc (GH-22281)
Use an unique identifier for the different grammars documented using
the Sphinx productionlist markup.

productionlist markups of the same grammar, like "expressions" or
"compound statements", use the same identifier "python-grammar".
2020-09-18 09:10:15 +02:00
Victor Stinner
1abeda80f7
bpo-40204: Fix duplicated productionlist names in the doc (GH-21900)
Sphinx 3 disallows having more than one productionlist markup with
the same name. Simply remove names in this case, since names are not
shown anyway. For example, fix the Sphinx 3 warning:

Doc/reference/introduction.rst:96: duplicate token description
of *:name, other instance in reference/expressions
2020-08-17 08:41:42 +02:00
Terry Jan Reedy
916895f939
bpo-13790: Change 'string' to 'specification' in format doc (GH-18690) 2020-02-28 14:59:16 -05:00
Pete Wicken
424e5686d8
bpo-38657: Clarify numeric padding behaviour in string formatting (GH-17036)
Make the definition of the width more explicit that it includes any
extra signs added by other options.


https://bugs.python.org/issue38657



Automerge-Triggered-By: @Mariatta
2020-02-20 21:53:12 -08:00
bchhabra2490
d44542f9a2 bpo-32790: Add info about alt format using # for 'g' in chart (GH-6624) 2019-09-13 18:20:21 +01:00
Brennan D Baraban
1660a61a10 bpo-23460: Fix documentation for decimal string :g formatting (GH-11850) 2019-09-11 15:59:37 +02:00
Krishna Oza
12b436e3b0 bpo-36168: Lowercase the word "subsequent" in get_value doc (GH-14485)
Subsequent -> subsequent

https://bugs.python.org/issue36168
2019-06-30 23:04:20 -07:00
Serhiy Storchaka
2085bd0877
bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-13700) 2019-06-01 11:00:15 +03:00
Andre Delfino
b420428cf5 Document actual string.punctuation value. (GH-12270) 2019-03-14 21:28:31 +02:00
Andrés Delfino
d64991031e Correct grammar mistakes in string.rst. (GH-9752) 2018-11-07 19:24:56 +02:00
Serhiy Storchaka
3f819ca138
bpo-35110: Fix unintentional spaces around hyphens and dashes. (GH-10231) 2018-10-31 02:26:06 +02:00
Serhiy Storchaka
913876d824
bpo-35054: Add yet more index entries for symbols. (GH-10121) 2018-10-28 13:41:26 +02:00
Serhiy Storchaka
ddb961d2ab
bpo-35054: Add more index entries for symbols. (GH-10064) 2018-10-26 09:00:49 +03:00
Terry Jan Reedy
28c7f8c8ce
bpo-34273: Change 'Fixed point' to 'Fixed-point notation'. (#8673)
* bpo-34273: Change 'Fixed point' to 'Fixed-point notation'.
The change in the mini language floating point and decimal table
is consistent with 'Exponential notation' and clarifies that we
are referring to the output notation, not an object type.

* Update string.rst

* Update string.rst

* Update string.rst

* Update string.rst
2018-08-06 08:41:17 -04:00
Xiang Zhang
b9d8ad5130
bpo-33828: Add missing versionchanged note for string.Formatter. (GH-7668)
string.Formatter auto-numbering feature was added in 3.4 and there
is no versionchanged note in its documentation, making the documentation
ambiguous about which version the feature is available.
2018-06-13 09:42:44 +08:00
Mariatta
7a561afd2c
bpo-32720: Fixed the replacement field grammar documentation. (GH-5544)
`arg_name` and `element_index` are defined as `digit`+ instead of `integer`.
2018-02-05 04:29:02 -05:00
nathankerr96
8b5fa289fd bpo-32720: Fixed the definition for width and precision in format mini-language doc (GH-5482)
Changed the definition of width and precision from "integer" to "digit+" in format mini-language doc.
2018-02-04 00:42:08 -05:00
Serhiy Storchaka
87be28f4a1
bpo-31672: Restore the former behavior when override flags in Template. (#5099)
Overriding flags to 0 will make the default pattern matching only
lower case letters.
2018-01-04 19:20:11 +02:00
Barry Warsaw
e256b40888
bpo-31672 - Add one last minor clarification for idpattern (#4483)
Add one last minor clarification for idpattern
2017-11-21 10:28:13 -05:00
INADA Naoki
073150db39 bpo-31672: doc: Remove one sentence from library/string.rst (GH-3990)
This sentence is removed while backporting to 3.6 branch.
See https://github.com/python/cpython/pull/3982#discussion_r144555768
2017-10-14 21:22:41 +09:00
INADA Naoki
b22273ec5d bpo-31672: Fix string.Template accidentally matched non-ASCII identifiers (GH-3872)
Pattern `[a-z]` with `IGNORECASE` flag can match to some non-ASCII characters.

Straightforward solution for this is using `IGNORECASE | ASCII` flag.
But users may subclass `Template` and override only `idpattern`. So we want to
avoid changing `Template.flags`.

So this commit uses local flag `-i` for `idpattern` and change `[a-z]` to `[a-zA-Z]`.
2017-10-13 16:02:23 +09:00
Barry Warsaw
ba4279683f bpo-1198569: Allow string.Template braced pattern to be different (#3288)
* bpo-1198569: Allow the braced pattern to be different

``string.Template`` subclasses can optionally define ``braceidpattern`` if
they want to specify different placeholder patterns inside and outside the
braces.  If None (the default) it falls back to ``idpattern``.
2017-09-04 16:32:10 -04:00
Barry Warsaw
9f74deba78 Improve the documentation for template strings (#856)
bpo-19824
bpo-20314
bpo-12518
2017-03-28 10:02:07 -04:00
Serhiy Storchaka
009b0a1fac Issue #29193: A format string argument for string.Formatter.format()
is now positional-only.
2017-01-13 09:10:51 +02:00
Serhiy Storchaka
989db5c880 Issue #19795: Mark up None as literal text. 2016-10-19 16:37:13 +03:00
Serhiy Storchaka
ecf41da83e Issue #19795: Mark up None as literal text. 2016-10-19 16:29:26 +03:00
Eric V. Smith
d7665ca7a4 Further improved ',' and '_' specification in format mini-language. 2016-09-09 23:13:01 -04:00
Eric V. Smith
fef4391c88 Improved ',' and '_' specification in format mini-language. 2016-09-09 23:12:02 -04:00
Eric V. Smith
89e1b1aae0 Issue 27080: PEP 515: add '_' formatting option. 2016-09-09 23:06:47 -04:00
Serhiy Storchaka
c499f30286 Issue #23921: Standardized documentation whitespace formatting.
Original patch by James Edwards.
2016-05-10 12:01:56 +03:00
Serhiy Storchaka
dba903993a Issue #23921: Standardized documentation whitespace formatting.
Original patch by James Edwards.
2016-05-10 12:01:23 +03:00
Terry Jan Reedy
370764a824 Merge with 3.5 2016-03-20 21:06:15 -04:00
Terry Jan Reedy
4902c46bff Issue #15660: Further clarify 0 prefix for width specifier in formats. 2016-03-20 21:05:57 -04:00
Martin Panter
bc1ee460dc Issue #25179: Documentation for formatted string literals aka f-strings
Some of the inspiration and wording is taken from the text of PEP 498 by Eric
V. Smith, and the existing str.format() documentation.
2016-02-13 00:41:37 +00:00
Martin Panter
d5db14794b Issue #25179: Preparatory cleanup of existing docs on string formatting
* Various sections were pointing to the section on the string.Formatter
  class, when the section on the common format string syntax is probably more
  appropriate
* Fix references to various format() functions and methods
* Nested replacement fields may contain conversions and format specifiers,
  and this is tested; see Issue #19729 for instance
2016-02-08 01:34:09 +00:00
Barry Warsaw
9380acbbf7 - Issue #24351: Clarify what is meant by "identifier" in the context of
string.Template instances.
2015-06-09 14:22:44 -04:00
Barry Warsaw
17d5f47423 - Issue #24351: Clarify what is meant by "identifier" in the context of
string.Template instances.
2015-06-09 14:20:31 -04:00
Serhiy Storchaka
b876df4cbb Issue #23671: string.Template now allows to specify the "self" parameter as
keyword argument.  string.Formatter now allows to specify the "self" and
the "format_string" parameters as keyword arguments.
2015-03-24 22:30:46 +02:00
Terry Jan Reedy
c6ad57608b Issue #22546: update doc for mini-language float None presentation type. 2014-10-06 02:04:33 -04:00
Ezio Melotti
2bbdfe7eda #19238: fix typo in documentation. 2013-11-17 02:47:12 +02:00
Ezio Melotti
c318442571 #19238, #19289: fix description of the align and fill values of the format specification. 2013-10-21 02:53:07 +03:00
Eric V. Smith
45fe62dc9c Issue #17728: Specify default precision for float.format for presentation types e, f, and g. 2013-04-15 09:51:54 -04:00