diff options
author | Stan Ulbrych <89152624+StanFromIreland@users.noreply.github.com> | 2025-05-18 16:59:20 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-05-18 15:59:20 +0000 |
commit | b1c33294ca5ef8d889f2ec87f9a8fa79741f9f7d (patch) | |
tree | d493a5c88b046a53d87a524501841e6837a4bcbe | |
parent | 53da1e8c8ccbe3161ebc42e8b8b7ebd1ab70e05b (diff) | |
download | cpython-b1c33294ca5ef8d889f2ec87f9a8fa79741f9f7d.tar.gz cpython-b1c33294ca5ef8d889f2ec87f9a8fa79741f9f7d.zip |
gh-134114: Clarify FAQ note about dictonary keys (#134118)
-rw-r--r-- | Doc/faq/design.rst | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/Doc/faq/design.rst b/Doc/faq/design.rst index e2710fab9cf..c758c019ca4 100644 --- a/Doc/faq/design.rst +++ b/Doc/faq/design.rst @@ -420,10 +420,12 @@ strings representing the files in the current directory. Functions which operate on this output would generally not break if you added another file or two to the directory. -Tuples are immutable, meaning that once a tuple has been created, you can't -replace any of its elements with a new value. Lists are mutable, meaning that -you can always change a list's elements. Only immutable elements can be used as -dictionary keys, and hence only tuples and not lists can be used as keys. +Tuples are :term:`immutable`, meaning that once a tuple has been created, you can't +replace any of its elements with a new value. Lists are :term:`mutable`, meaning that +you can always change a list's elements. Only :term:`hashable` objects can +be used as dictionary keys. Most immutable types are hashable, which is why +tuples, but not lists, can be used as keys. Note, however, that a tuple is +only hashable if all of its elements are hashable. How are lists implemented in CPython? |