Слайд 2Что такое словарь (dict) в Python?
Словарь (dict) представляет собой структуру данных (которая
ещё называется ассоциативный массив), предназначенную для хранения произвольных объектов с доступом по ключу. Данные в словаре хранятся в формате ключ – значение. Если вспомнить такую структуру как список, то доступ к его элементам осуществляется по индексу, который представляет собой целое неотрицательное число.
Слайд 3Создание словаря
Пустой словарь можно создать, используя функцию dict(), либо просто указав пустые фигурные
скобки.
>>> d1 = dict()
>>> print(type(d1))
>>> d2 = {}
>>> print(type(d2))
Если необходимо создать словарь с заранее подготовленным набором данных, то можно использовать один из перечисленных выше подходов, но с перечислением групп ключ-значение.
>>> d1 = dict(Ivan="manager", Mark="worker")
>>> print(d1) {'Mark': 'worker', 'Ivan': 'manager'}
>>> d2 = {"A1":"123", "A2":"456"}
>>> print(d2) {'A2': '456', 'A1': '123'}
Слайд 4Добавление и удаление элемента
Чтобы добавить элемент в словарь нужно указать новый ключ
и значение.
>>> d1 = {"Russia":"Moscow", "USA":"Washington"} >>> d1["China"]="Beijing"
>>> print(d1) {'Russia': 'Moscow', 'China': 'Beijing', 'USA': 'Washington'}
Для удаления элемента из словаря можно воспользоваться командой del.
>>> d2 = {"A1":"123", "A2":"456"}
>>> del d2["A1"]
>>> print(d2) {'A2': '456'}
Слайд 5Работа со словарем
Проверка наличия ключа в словаре производится с помощью оператора in.
>>> d2
= {"A1":"123", "A2":"456"}
>>> "A1" in d2 True
>>> "A3" in d2 False
Доступ к элементу словаря, осуществляется как же как доступ к элементу списка, только в качестве индекса указывается ключ.
>>> d1 = {"Russia":"Moscow", "USA":"Washington"}
>>> d1["Russia"] 'Moscow'
Слайд 6Методы словарей
dict.clear() - очищает словарь.
dict.copy() - возвращает копию словаря.
classmethod dict.fromkeys(seq[, value]) - создает
словарь с ключами из seq и значением value (по умолчанию None).
dict.get(key[, default]) - возвращает значение ключа, но если его нет, не бросает исключение, а возвращает default (по умолчанию None).
dict.items() - возвращает пары (ключ, значение).
dict.keys() - возвращает ключи в словаре.
dict.pop(key[, default]) - удаляет ключ и возвращает значение. Если ключа нет, возвращает default (по умолчанию бросает исключение).
dict.popitem() - удаляет и возвращает пару (ключ, значение). Если словарь пуст, бросает исключение KeyError. Помните, что словари неупорядочены.
dict.setdefault(key[, default]) - возвращает значение ключа, но если его нет, не бросает исключение, а создает ключ с значением default (по умолчанию None).
dict.update([other]) - обновляет словарь, добавляя пары (ключ, значение) из other. Существующие ключи перезаписываются. Возвращает None (не новый словарь!).
dict.values() - возвращает значения в словаре.
Слайд 7Пример задачи
Необходимо написать программу, которая будет определять к кому оператору связи относится
номер телефона.
Слайд 8Модуль datetime
Модуль datetime предоставляет классы для обработки времени и даты разными способами.
Поддерживается и стандартный способ представления времени, однако больший упор сделан на простоту манипулирования датой, временем и их частями.
Классы, предоставляемые модулем datetime:
Класс datetime.date(year, month, day) - стандартная дата. Атрибуты: year, month, day. Неизменяемый объект.
Класс datetime.time(hour=0, minute=0, second=0, microsecond=0, tzinfo=None) - стандартное время, не зависит от даты. Атрибуты: hour, minute, second, microsecond, tzinfo.
Класс datetime.timedelta - разница между двумя моментами времени, с точностью до микросекунд.
Класс datetime.tzinfo - абстрактный базовый класс для информации о временной зоне (например, для учета часового пояса и / или летнего времени).
Слайд 9Пример работы с классом datetime: