Similar presentations:
Словари и методы. Изображение от Storyset на Freepik.com
1.
2023Название программы
Python
Тема занятия
Словари
и методы
Изображение от Storyset на Freepik.com
2.
2023План
занятия
Python
Введение
Теория
Словари
Теория
Основные методы
Теория
Методы чтения
Практика
Словари
Домашнее задание
Итоги
Изображение от Storyset на Freepik.com
3.
2023Python
Проверяем
домашнее задание
1
Какие трудности возникли
при написании кода?
3
Пользовался ли ты конспектом урока
при решении домашней работы?
2
Искал ли ты информацию
в интернете?
4
Что больше всего
понравилось/не понравилось
в процессе выполнения задания?
Изображение от Storyset на Freepik.com
4.
2023Python
Введение
На прошлом занятии мы изучали
типы данных, которые могут хранить
в себе сразу несколько значений.
Давай узнаем про них побольше!
Этими типами были списки и кортежи.
Их отличительной чертой была индексация,
позволяющая получить доступ к любому
элементу списка или кортежа с помощью
индекса этого элемента.
Словари хранят данные совсем
в другом виде.
Изображение от Storyset на Freepik.com
5.
2023Python
Теория
Словари
Изображение от Storyset на Freepik.comс
6.
2023Python
Теория
Словари это тип данных, позволяющих хранить
в себе множество различных значений,
отличающийся от списка и кортежа тем,
что словарь вместо индексации использует
пары ключ-значение.
В Python тип данных словаря называется
dict - сокращение от dictionary,
на русском языке – словарь.
Помнишь ли ты,
что такое индексация?
Изображение от Storyset на Freepik.com
7.
2023Python
Теория
Если в списках элементам автоматически
присваивается индекс, то в словарях необходимо
самостоятельно придумывать ключ.
Словарь выглядит так
dict = {
"ключ": "значение"
}
Для создания и обозначения словаря
используются фигурные скобки.
В них, через двоеточие, указывается
пара ключ-значение.
Ключами в словаре могут быть следующие
типы данных: строки, числа и кортежи.
А значениями могут быть: числа, строки,
списки, кортежи и даже другие словари.
8.
2023Python
Теория
Словарь является изменяемым и при этом
неупорядоченным типом данных.
Это значит, что мы можем изменять словарь,
но обратиться по индексу не можем,
ведь у словаря их нет.
dict = {
"ключ": "значение",
123: 1234,
"список": ["1", 2, "3"]
}
print(dict["список"])
>>> ['1', 2, '3']
То есть вот такая запись приведет к ошибке:
dict = {
"ключ": "значение"
}
print(dict[0])
9.
2023Python
Теория
Чтобы получить доступ к значению в словаре,
необходимо вместо индекса вписать ключ:
dict = {
"ключ": "значение"
}
print(dict["ключ"])
>>> значение
Изображение от Storyset на Freepik.com
10.
2023Python
Теория
Основные
методы
Словари, как и все типы данных, имеют
набор собственных методов, которые
помогают выполнять те или иные задачи.
Давай разберём основные методы словарей.
Изображение от Storyset на Freepik.comс
11.
2023Python
Теория
Словари, как и все типы данных,
имеют набор собственных методов,
которые помогают выполнять
те или иные задачи.
Давай разберём
основные методы словарей.
Изображение от Storyset на Freepik.com
12.
2023Python
Теория
1.
Добавление значения
Добавить новое значение в словарь можно просто
написав имя словаря, поставив квадратные скобки,
вписав туда новый ключ и присвоив значение,
как новой переменной:
dict = {"ключ": "значение"}
dict[2023] = "Год Кролика"
print(dict)
>>> {'ключ': 'значение', 2023: 'Год Кролика'}
13.
2023Python
Теория
2.
Изменение значения
Изменять значения можно таким же образом:
dict[2023] = "Год Водяного Кролика"
print(dict)
>>> {'ключ': 'значение', 2023: 'Год Водяного Кролика'}
Как видишь, значение
действительно поменялось.
14.
2023Python
Теория
3.
Удаление значений
Удаление через del
Используя оператор del можно удалить пару
значений по такому же принципу, как и в списках:
после оператора указать имя словаря,
а в квадратных скобках указать ключ,
значение которого необходимо удалить.
del dict["ключ"]
print(dict)
>>> {2023: 'Год Водяного Кролика'}
15.
2023Python
Теория
Удаление значений
3.
Удаление через метод pop()
Но это не основная функция метода pop().
Он предназначен для того, чтобы вытаскивать
из списков/словарей значения.
Посмотри, что получится, если мы сохраним
результат функции pop() в переменную.
Используя метод pop(), указав в скобки нужный
ключ, можно также удалить элемент из словаря:
dict.pop(2023)
print(dict)
>>> {}
dict = {2023: 'Год Водяного Кролика'}
rez = dict.pop(2023)
print(rez)
>>> Год Водяного Кролика
Удалять можно даже последний элемент,
словарь просто станет пустым.
16.
2023Python
Теория
3.
Удаление значений
Вытащить и ключ тоже
Удалить последний элемент в списке
не представляется трудностью, можно
указать индекс -1 при удалении.
Но как удалить последний добавленный
элемент в словарь, в нём ведь нет индексов?
17.
2023Python
Теория
3.
Удаление значений
Вытащить и ключ тоже
Для этого нам пригодится метод popitem():
dict = {"ключ": "значение"}
dict[2023] = "Год Кролика"
dict["Макароны"] = "спагетти"
print(dict)
rez = dict.popitem()
print(dict)
print(rez)
>>>
{'ключ': 'значение', 2023: 'Год Кролика', 'макароны': 'спагетти'}
{'ключ': 'значение', 2023: 'Год Кролика'}
('Макароны', 'спагетти')
18.
2023Python
Теория
3.
Удаление значений
Очищение всего словаря
Чтобы очистить словарь,
нам пригодится метод clear()
print(dict)
dict.clear()
print(dict)
>>>
{'ключ': 'значение', 2023: 'Год Кролика', 'макароны': 'спагетти'}
{}
19.
2023Теория
Методы
чтения
Python
20.
2023Python
Теория
В Python существуют специальные
методы, предназначенные для чтения
данных из словарей.
Сейчас мы разберём два из них:
Изображение от Storyset на Freepik.com
21.
2023Теория
1. keys() — ключи
Этот метод позволяет получить
список из всех ключей словаря.
Но использовать его нужно в паре
с функциями list() или tuple()!
example = {'персона': 'человек',
'марафон': 'гонка бегунов длиной около 26 миль',
'противостоять: оставаться сильным, несмотря на давление',
'бежать': 'двигаться со скоростью'}
print(list(example.keys()))
>>> ['персона', 'марафон', 'противостоять', 'бежать']
Python
22.
2023Теория
2. values() — значения
Этот метод позволяет получить
список из всех значений словаря.
Но использовать его нужно также
в паре с функциями list() или tuple()!
print(list(example.values()))
>>>
['человек', 'гонка бегунов длиной около 26 миль', 'оставаться сильным',
'несмотря на давление', 'двигаться со скоростью']
Python
23.
2023Python
Практика
Словари
Изображение от Storyset на Freepik.comс
24.
2023Практика
Телефонная книга
Нужно создать телефонную книгу,
в которой будут храниться номера
телефонов разных абонентов.
Каждому ФИО соответствует
один номер телефона.
Поиск в книге будет производиться
по фамилии абонента и, если такой
номер существует, выводиться в консоль.
Python
25.
2023Python
Практика
Телефонная книга
Нужно создать телефонную книгу,
в которой будут храниться номера
телефонов разных абонентов.
Каждому ФИО соответствует
один номер телефона.
Поиск в книге будет производиться
по фамилии абонента и, если такой
номер существует, выводиться в консоль.
phone_book= {
'Белозеров': '+7 120 959 45 19',
'Владимиров': '+7 (342) 787-1717',
'Симонов': '+7 550 642 49 52',
'Герасимова': '+7 056 273 2478'
}
last_name = input("Введите фамилию -> ")
print(f"Найден номер телефона: {phone_book[last_name]}")
26.
2023Практика
Новый телефон
Владимиров купил новый телефон
и симку, у него поменялся номер.
С помощью метода редактирования
измени Владимирову номер телефона.
Python
27.
2023Python
Практика
Новый телефон
Владимиров купил новый телефон
и симку, у него поменялся номер.
С помощью метода редактирования
измени Владимирову номер телефона.
phone_book = {
'Белозеров': '+7 120 959 45 19',
'Владимиров': '+7 (342) 787-1717',
'Симонов': '+7 550 642 49 52',
'Герасимова': '+7 056 273 2478'
}
phone_book["Владимиров"] = '+79175694884'
last_name = input("Введите фамилию -> ")
print(f"Найден номер телефона: {phone_book[last_name]}")
28.
2023Python
Практика
Переезд
Герасимова переезжает в другую
область и отключает свой номер.
Удали её номер из телефонной
книги с помощью метода pop().
phone_book = {
'Белозеров': '+7 120 959 45 19',
'Владимиров': '+7 (342) 787-1717',
'Симонов': '+7 550 642 49 52',
'Герасимова': '+7 056 273 2478'
}
phone_book["Владимиров"] = '+79175694884'
phone_book.pop("Герасимова")
29.
2023Python
Практика
Переезд
Герасимова переезжает в другую
область и отключает свой номер.
Удали её номер из телефонной
книги с помощью метода pop().
phone_book = {
'Белозеров': '+7 120 959 45 19',
'Владимиров': '+7 (342) 787-1717',
'Симонов': '+7 550 642 49 52',
'Герасимова': '+7 056 273 2478'
}
phone_book["Владимиров"] = '+79175694884'
phone_book.pop("Герасимова")
30.
2023Python
Домашнее
задание
1. Модификация
Телефонная книга обновилась и теперь позволяет
абонентам иметь в базе сразу несколько номеров,
но код остался прежним. Улучши код таким образом,
чтобы у каждой фамилии мог быть не один номер.
В этом тебе помогут списки!
Подумай, где в коде их можно
использовать, чтобы решить эту задачку
Изображение от Storyset на Freepik.com
31.
2023Python
Домашнее
задание
2. Все абоненты
Выведи в консоль список всех абонентов
из телефонной книги.
Используй для этого метод values()
Изображение от Storyset на Freepik.com
32.
2023Python
Итоги
Что нового сегодня
было на занятии?
Как ты думаешь, где еще
ты бы мог применить словари?
Какое метод показался
тебе самым простым?
Есть ли преимущество
у словарей перед списками?
Изображение от Storyset на Freepik.com