Sobes.tech
Junior

Jaké mohou být klíče ve slovnících v Pythonu?

sobes.tech AI

Odpověď od AI

Klíče ve slovnících Pythonu mohou být jakýkoli neměnné (hashable) objekty.

Neměnné datové typy zahrnují:

  • Celá čísla (int)
  • Čísla s plovoucí desetinnou čárkou (float)
  • Řetězce (str)
  • N-tice (tuple), které obsahují pouze neměnné prvky
  • Boolovské hodnoty (bool)
  • NoneType (None)
  • Frozenset (frozenset), který obsahuje pouze neměnné prvky

Příklady platných klíčů:

# Platné klíče
můj_dictionar = {
    1: "jedna",
    3.14: "pi",
    "klíč": "hodnota",
    (1, 2): "n-tice",
    True: "pravda",
    None: "žádný",
    frozenset({1, 2}): "neměnná množina"
}

Neměnné objekty mají hash, který se používá pro rychlé vyhledávání ve slovníku.

Měnitelné datové typy, jako jsou seznamy (list), množiny (set) a jiné slovníky (dict), nemohou být klíči, protože jejich obsah se může změnit, což by narušilo integritu hash.

Příklady neplatných klíčů:

# Neplatné klíče (vyvolá TypeError)
# můj_dictionar = {
#     [1, 2]: "seznam",
#     {1, 2}: "množina",
#     {"a": 1}: "jiný slovník"
# }