10000 [3.12] gh-111622: Fix doc for items views (GH-112051) by miss-islington · Pull Request #112052 · python/cpython · GitHub
[go: up one dir, main page]

Skip to content

[3.12] gh-111622: Fix doc for items views (GH-112051) #112052

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 14, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
gh-111622: Fix doc for items views (GH-112051)
They are set-like even when some values are not hashable,
but work even better when all are.
(cherry picked from commit e31d65e)

Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
  • Loading branch information
terryjreedy authored and miss-islington committed Nov 14, 2023
commit d9d099b47b68a5be1091ae7ea931818a9f15b736
13 changes: 8 additions & 5 deletions Doc/library/stdtypes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4752,14 +4752,17 @@ support membership tests:

.. versionadded:: 3.10

Keys views are set-like since their entries are unique and :term:`hashable`. If all
values are hashable, so that ``(key, value)`` pairs are unique and hashable,
then the items view is also set-like. (Values views are not treated as set-like
Keys views are set-like since their entries are unique and :term:`hashable`.
Items views also have set-like operations since the (key, value) pairs
are unique and the keys are hashable.
If all values in an items view are hashable as well,
then the items view can interoperate with other sets.
(Values views are not treated as set-like
since the entries are generally not unique.) For set-like views, all of the
operations defined for the abstract base class :class:`collections.abc.Set` are
available (for example, ``==``, ``<``, or ``^``). While using set operators,
set-like views accept any iterable as the other operand, unlike sets which only
accept sets as the input.
set-like views accept any iterable as the other operand,
unlike sets which only accept sets as the input.

An example of dictionary view usage::

Expand Down
0