Middle
Kādi ierobežojumi ir saistīti ar atslēgām dict Python?
sobes.tech AI
Atbilde no AI
Python valodā atslēgas vārdnīcā (dict) ir jābūt hashable (nemainīgiem) objektiem. Tas nozīmē, ka atslēgām jābūt nemainīgām un jāīsteno metode __hash__().
Galvenie ierobežojumi:
- Atslēgas jābūt nemainīgiem tipiem, piemēram: virknes (
str), skaitļi (int,float), tuple (tuple), ja visi tuple elementi ir arī hashable. - Nav atļauts izmantot maināmus tipus, piemēram, sarakstus (
list), kopas (set), vārdnīcas (dict) kā atslēgas, jo tie nav hashable.
Piemērs:
valid_dict = {
"key": 1,
42: "value",
(1, 2): "tuple key"
}
invalid_dict = {
[1, 2]: "list as key" # izraisīs TypeError
}
Ja mēģināsiet izmantot maināmu objektu kā atslēgu, Python izmetīs kļūdu TypeError: unhashable type.