Sobes.tech
Senior

Aký je rozdiel medzi zoznamom a n-ticou v kontexte slovníkov?

sobes.tech AI

Odpoveď od AI

V kontexte slovníkov (napríklad v Pythone) je rozdiel medzi zoznamom a n-ticou dôležitý pre kľúče slovníka:

  • Zoznam — meniteľný dátový typ, preto nemôže byť použitý ako kľúč slovníka, pretože kľúče musia byť hashovateľné a nemenné.
  • N-tica — nemenný dátový typ, takže môže byť použitý ako kľúč slovníka, ak všetky jej prvky sú tiež hashovateľné.

Príklad:

my_dict = {}
my_dict[(1, 2)] = 'n-tica ako kľúč'  # Funguje

my_dict[[1, 2]] = 'zoznam ako kľúč'    # Chyba TypeError: unhashable type: 'list'

Preto sú n-tice vhodné pre zložené kľúče v slovníkoch, zatiaľ čo zoznamy nie.