diff options
author | Miss Skeleton (bot) <31488909+miss-islington@users.noreply.github.com> | 2020-10-20 23:58:49 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-20 23:58:49 (GMT) |
commit | d05514ace652769457e6228f0186d4f830b676b9 (patch) | |
tree | 8d4ffa31308e3f7016b8ed383c52e75c30057f2d | |
parent | 46130f85381f697dc7f609b2659cc046d2370417 (diff) | |
download | cpython-d05514ace652769457e6228f0186d4f830b676b9.zip cpython-d05514ace652769457e6228f0186d4f830b676b9.tar.gz cpython-d05514ace652769457e6228f0186d4f830b676b9.tar.bz2 |
[3.9] bpo-42010: [docs] Clarify subscription of types (GH-22822) (GH-22840)
(cherry picked from commit 7cdf30fff39ea97f403b5472096349998d190e30)
Co-authored-by: kj <28750310+Fidget-Spinner@users.noreply.github.com>
Automerge-Triggered-By: GH:gvanrossum
-rw-r--r-- | Doc/reference/expressions.rst | 15 | ||||
-rw-r--r-- | Misc/NEWS.d/next/Documentation/2020-10-21-02-21-14.bpo-42010.76vJ0u.rst | 4 |
2 files changed, 17 insertions, 2 deletions
diff --git a/Doc/reference/expressions.rst b/Doc/reference/expressions.rst index b68c298..f1f19c3 100644 --- a/Doc/reference/expressions.rst +++ b/Doc/reference/expressions.rst @@ -796,8 +796,8 @@ Subscriptions object: dictionary pair: sequence; item -A subscription selects an item of a sequence (string, tuple or list) or mapping -(dictionary) object: +Subscription of a sequence (string, tuple or list) or mapping (dictionary) +object usually selects an item from the collection: .. productionlist:: python-grammar subscription: `primary` "[" `expression_list` "]" @@ -833,6 +833,17 @@ this method will need to explicitly add that support. A string's items are characters. A character is not a separate data type but a string of exactly one character. +.. + At the time of writing this, there is no documentation for generic alias + or PEP 585. Thus the link currently points to PEP 585 itself. + Please change the link for generic alias to reference the correct + documentation once documentation for PEP 585 becomes available. + +Subscription of certain :term:`classes <class>` or :term:`types <type>` +creates a `generic alias <https://www.python.org/dev/peps/pep-0585/>`_. +In this case, user-defined classes can support subscription by providing a +:meth:`__class_getitem__` classmethod. + .. _slicings: diff --git a/Misc/NEWS.d/next/Documentation/2020-10-21-02-21-14.bpo-42010.76vJ0u.rst b/Misc/NEWS.d/next/Documentation/2020-10-21-02-21-14.bpo-42010.76vJ0u.rst new file mode 100644 index 0000000..2a0cbf1 --- /dev/null +++ b/Misc/NEWS.d/next/Documentation/2020-10-21-02-21-14.bpo-42010.76vJ0u.rst @@ -0,0 +1,4 @@ +Clarify that subscription expressions are also valid for certain +:term:`classes <class>` and :term:`types <type>` in the standard library, and +for user-defined classes and types if the classmethod +:meth:`__class_getitem__` is provided. |