Словари
Во всех рассмотренных последовательностях обращаться к отдельным элементам нужно было по индексу. Иную форму организации последовательности представляют словари - еще одна структура данных, активно используемая в пррограмировании на Python. В других языках программирования такая структура носит название ассоциативного массива. В словарях для доступа к отдельным его элементам используются ключевые индексы, подобные индексам в базах данных. Индексом может быть любой неизменяемый объект, такой как строка, число, константный список (такой список может содержать только строки, числа или другие константные списки). В тексте программы словари задаются фигурными скобками {} с перечислением элементов словаря. Каждому элементу словаря должен соответствовать определённый индекс, который отделяется от элемента двоеточием (“индекс:значение”).
К элементам словаря можно обращаться по соответствующим им индексам. При обращении к несуществующему индексу возникает ошибка. Чтобы узнать список всех индексов словаря, можно воспользоваться методом keys(), которая возвращает все индексы словаря в случайном порядке(но вы можете отсортировать индексы функцией sort()). Чтобы проверить наличие индекса в словаре, можно использовать метод has_key(). Вот простой пример использования словаря:
>>> tel = {'Ваня': 4098, 'Коля': 4139}
>>> tel['Андрей'] = 4127
>>> tel
{'Коля': 4139, 'Андрей': 4127, 'Ваня': 4098}
>>> tel['Ваня']
4098
>>> del tel['Коля']
>>> tel['Дима'] = 4127
>>> tel
{'Андрей': 4127, 'Дима': 4127, 'Ваня': 4098}
>>> tel.keys()
['Андрей', 'Дима', 'Ваня']
>>> tel.has_key('Ваня')
1
Словарь, как и списки,
можно индексировать как по
значению так и по ключу.