Skip to content

Commit

Permalink
[3.12] Replace the esoteric term 'datum' when describing dict compreh…
Browse files Browse the repository at this point in the history
…ensions (GH-106119) (#106348)

Replace the esoteric term 'datum' when describing dict comprehensions (GH-106119)
(cherry picked from commit 987b712)

Co-authored-by: Ned Batchelder <ned@nedbatchelder.com>
  • Loading branch information
miss-islington and nedbat committed Jul 3, 2023
1 parent 730c873 commit 5e85604
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 12 deletions.
22 changes: 11 additions & 11 deletions Doc/reference/expressions.rst
Original file line number Diff line number Diff line change
Expand Up @@ -298,27 +298,27 @@ Dictionary displays
.. index::
pair: dictionary; display
pair: dictionary; comprehensions
key, datum, key/datum pair
key, value, key/value pair
pair: object; dictionary
single: {} (curly brackets); dictionary expression
single: : (colon); in dictionary expressions
single: , (comma); in dictionary displays

A dictionary display is a possibly empty series of key/datum pairs enclosed in
curly braces:
A dictionary display is a possibly empty series of dict items (key/value pairs)
enclosed in curly braces:

.. productionlist:: python-grammar
dict_display: "{" [`key_datum_list` | `dict_comprehension`] "}"
key_datum_list: `key_datum` ("," `key_datum`)* [","]
key_datum: `expression` ":" `expression` | "**" `or_expr`
dict_display: "{" [`dict_item_list` | `dict_comprehension`] "}"
dict_item_list: `dict_item` ("," `dict_item`)* [","]
dict_item: `expression` ":" `expression` | "**" `or_expr`
dict_comprehension: `expression` ":" `expression` `comp_for`

A dictionary display yields a new dictionary object.

If a comma-separated sequence of key/datum pairs is given, they are evaluated
If a comma-separated sequence of dict items is given, they are evaluated
from left to right to define the entries of the dictionary: each key object is
used as a key into the dictionary to store the corresponding datum. This means
that you can specify the same key multiple times in the key/datum list, and the
used as a key into the dictionary to store the corresponding value. This means
that you can specify the same key multiple times in the dict item list, and the
final dictionary's value for that key will be the last one given.

.. index::
Expand All @@ -328,7 +328,7 @@ final dictionary's value for that key will be the last one given.
A double asterisk ``**`` denotes :dfn:`dictionary unpacking`.
Its operand must be a :term:`mapping`. Each mapping item is added
to the new dictionary. Later values replace values already set by
earlier key/datum pairs and earlier dictionary unpackings.
earlier dict items and earlier dictionary unpackings.

.. versionadded:: 3.5
Unpacking into dictionary displays, originally proposed by :pep:`448`.
Expand All @@ -344,7 +344,7 @@ in the new dictionary in the order they are produced.
Restrictions on the types of the key values are listed earlier in section
:ref:`types`. (To summarize, the key type should be :term:`hashable`, which excludes
all mutable objects.) Clashes between duplicate keys are not detected; the last
datum (textually rightmost in the display) stored for a given key value
value (textually rightmost in the display) stored for a given key value
prevails.

.. versionchanged:: 3.8
Expand Down
2 changes: 1 addition & 1 deletion Doc/reference/simple_stmts.rst
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ Assignment of an object to a single target is recursively defined as follows.

If the primary is a mapping object (such as a dictionary), the subscript must
have a type compatible with the mapping's key type, and the mapping is then
asked to create a key/datum pair which maps the subscript to the assigned
asked to create a key/value pair which maps the subscript to the assigned
object. This can either replace an existing key/value pair with the same key
value, or insert a new key/value pair (if no key with the same value existed).

Expand Down

0 comments on commit 5e85604

Please sign in to comment.