Sobes.tech
Junior

Ce pot fi cheile în dicționarele din Python?

sobes.tech AI

Răspuns de la AI

Cheile din dicționarele Python pot fi orice obiect imutabil (hashable).

Tipurile de date imutabile includ:

  • Numere întregi (int)
  • Numere în virgulă mobilă (float)
  • Șiruri de caractere (str)
  • Tupluri (tuple) care conțin doar elemente imutabile
  • Valori booleene (bool)
  • NoneType (None)
  • Frozenset (frozenset) care conține doar elemente imutabile

Exemple de chei permise:

# Chei permise
my_dict = {
    1: "unu",
    3.14: "pi",
    "cheie": "valoare",
    (1, 2): "tuplu",
    True: "adevărat",
    None: "nimic",
    frozenset({1, 2}): "mulțime imutabilă"
}

Obiectele imutabile au un hash folosit pentru căutări rapide în dicționar.

Tipurile de date mutable, precum liste (list), mulțimi (set) și alți dicționari (dict), nu pot fi chei deoarece conținutul lor se poate schimba, ceea ce ar compromite integritatea hash-ului.

Exemple de chei nepermise:

# Chei nepermise (va genera TypeError)
# my_dict = {
#     [1, 2]: "listă",
#     {1, 2}: "mulțime",
#     {"a": 1}: "alt dicționar"
# }