Указания к занятию 11
Словарь (dict) – это тип данных, хранящий соответствие одних значений другим (ключам словаря).
Примеры (обратите внимание: в примере встречаются три типа скобок)
>>> da = {"a":5, "b":6, "c":7, "d":5}
>>> db = = dict()
>>> db["a"] = 2
>>> db["b"] = 3
>>> print db
{'a': 2, 'b': 3}
>>> da["a"] + db["a"]
7Значения словаря могут повторяться, ключи – нет.
Метод keys() возвращает список ключей словаря:
>>> db = dict() >>> db["a"] = 2 >>> db["b"] = 3 >>> db.keys() ['a', 'b']
Ключом словаря может быть любое значение неизменяемого типа. К неизменяемым относятся типы int, float, bool, str, к изменяемым – list и сам dict. То есть словарь не может быть ключом словаря. Но словарь вполне может быть значением словаря, то есть ситуация вида x["a"]["b"] вполне допустима.
Если очень хочется сделать ключом словаря список, то нужно использовать не list, а другой тип данных — кортеж (tuple). Кортеж (на первый взгляд) отличается от списка только заменой квадратных скобок на круглые, например:
>>> ta = (1, 2, 5, 4) >>> ta[0] 1 >>> ta[3] 4 >>> len(ta) 4
Но есть и различия, главное из которых – неизменяемость кортежа:
>>> la = [1, 2, 3, 4] >>> la[0] = 7 >>> la [7, 2, 3, 4] >>> ta = (1, 2, 3, 4) >>> ta[0] = 7 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'tuple' object does not support item assignment

2025
2024
2023
2022
2021
2020
2019
2018