Множества

Содержание

Слайд 2

Во время урока откройте презентацию в режиме Просмотр (ctrl+enter). Так ученики увидят только

Во время урока откройте презентацию в режиме Просмотр (ctrl+enter). Так ученики увидят
свои слайды. В презентации есть методические слайды, которые нужны только преподавателю. Они отмечены иконкой «глаз».

Слайд-инструкция

Слайд 3

Новая тема

Задача:
написать программу, которая хранит список различных книг, прочитанных одним классом.

?

Новая тема Задача: написать программу, которая хранит список различных книг, прочитанных одним классом. ?

Слайд 4

Новая тема

С помощью каких инструментов Python
можно запомнить прочитанные книги?

?

Новая тема С помощью каких инструментов Python можно запомнить прочитанные книги? ?

Слайд 5

Новая тема

Хранение прочитанных книг

Список книг

Словарь с книгами

Новая тема Хранение прочитанных книг Список книг Словарь с книгами

Слайд 6

Новая тема

По какому алгоритму будет работать программа, хранящая прочитанные книги
в списке?

?

Новая тема По какому алгоритму будет работать программа, хранящая прочитанные книги в списке? ?

Слайд 7

Новая тема

Пользователь вводит название книги.
Программа просматривает список,
есть ли книга с таким

Новая тема Пользователь вводит название книги. Программа просматривает список, есть ли книга
названием.
Если такой книги нет, то она добавляется в список.

Возможная схема программы со списками:

Слайд 8

Новая тема

Пользователь вводит название книги.
Программа сразу определяет, есть ли книга в словаре

Новая тема Пользователь вводит название книги. Программа сразу определяет, есть ли книга
среди ключей (оператор in).
Если такой книги нет, то создаётся новая пара «ключ-элемент».

Возможная схема программы со словарями:

Слайд 9

Новая тема

В чём преимущества и недостатки
каждого способа?

Новая тема В чём преимущества и недостатки каждого способа?

Слайд 10

Новая тема

книги могут дублироваться
(неэкономный расход памяти).

?

Программа со списками:

Новая тема книги могут дублироваться (неэкономный расход памяти). ? Программа со списками:

Слайд 11

Новая тема

нужно хранить лишние данные, кроме названия книги
(не эффективно).

?

Программа со словарями:

Новая тема нужно хранить лишние данные, кроме названия книги (не эффективно). ? Программа со словарями:

Слайд 12

Новая тема

?
Какая структура данных
решила бы задачу наиболее эффективно?

Новая тема ? Какая структура данных решила бы задачу наиболее эффективно?

Слайд 13

Новая тема

структура данных, хранящая элементы только по 1 разу, порядок расположения элементов и их

Новая тема структура данных, хранящая элементы только по 1 разу, порядок расположения
номера не важны.

?

?

?

Такой инструмент есть в Python!

Для базы данных книг нам нужна:

Слайд 14

Множество —
это неупорядоченный набор элементов.
Каждый элемент встречается в множестве только 1 раз.

Определение

Множество — это неупорядоченный набор элементов. Каждый элемент встречается в множестве только 1 раз. Определение

Слайд 15

Создание множества

Новая тема

many = set()

Название множества

Команда, создающая пустое множество

Создание множества Новая тема many = set() Название множества Команда, создающая пустое множество

Слайд 16

Создание множества

Новая тема

many = {1, 2, 3}

Название множества

Элементы множества

Создание множества Новая тема many = {1, 2, 3} Название множества Элементы множества

Слайд 17

Пример:

Новая тема

many = {1, 2, 3, 3, 2, 1}
print(many)

{1, 2, 3}

Программа

Вывод

Элементы

Пример: Новая тема many = {1, 2, 3, 3, 2, 1} print(many)
множества не повторяются

Слайд 18

Множества удобно использовать, если:

важно знать входит элемент во множество или нет; другие свойства

Множества удобно использовать, если: важно знать входит элемент во множество или нет;
элемента (например, порядковый номер) не важны.

Вывод

?
?

Слайд 19

Добавление элемента во множество

Новая тема

many.add(5)

Метод, добавляющий элемент, указанный в скобках

Добавляемый элемент

Добавление элемента во множество Новая тема many.add(5) Метод, добавляющий элемент, указанный в скобках Добавляемый элемент

Слайд 20

Пример:

Новая тема

many = {1, 2, 3}
many.add(5)
print(many)

{1, 2, 3, 5}

Программа

Вывод

Пример: Новая тема many = {1, 2, 3} many.add(5) print(many) {1, 2, 3, 5} Программа Вывод

Слайд 21

Принадлежит ли элемент множеству

Новая тема

5 in many

Проверяемый
элемент

Проверяемое множество

Команда, определяющая принадлежность

Принадлежит ли элемент множеству Новая тема 5 in many Проверяемый элемент Проверяемое множество Команда, определяющая принадлежность

Слайд 22

Пример:

Новая тема

many = {1, 2, 3, 5}
if 5 in many:
print(“Yes!”)

Yes

Программа

Вывод

Пример: Новая тема many = {1, 2, 3, 5} if 5 in

Слайд 23

Демонстрация

mars.algoritmika.org

Примеры и программа, хранящая названия прочитанных книг.

Демонстрация mars.algoritmika.org Примеры и программа, хранящая названия прочитанных книг.

Слайд 24

Работаем на платформе

mars.algoritmika.org

1 - заходим на платформу.
2 - выбираем задание «Множества: задачи».

Работаем на платформе mars.algoritmika.org 1 - заходим на платформу. 2 - выбираем задание «Множества: задачи».

Слайд 25


Перерыв

⏳ Перерыв

Слайд 26

Повторение

Делимся на команды
по 3 или 4 человека.
Каждая команда
выбирает капитана.

?

?

Повторение Делимся на команды по 3 или 4 человека. Каждая команда выбирает капитана. ? ?

Слайд 27

?Команда читает вопрос на экране. ☝️ Команда придумывает ответ (2 минуты).
?Капитан записывает ответ

?Команда читает вопрос на экране. ☝️ Команда придумывает ответ (2 минуты). ?Капитан
на листе.

Повторение

Ход игры:

Слайд 28

Что такое список?

Повторение

Что такое список? Повторение

Слайд 29

Назови 2 любых отличия
списка от множества.

Повторение

Назови 2 любых отличия списка от множества. Повторение

Слайд 30

Какая это структура данных?

Повторение

phones={‘Ваня’: 9067345, ‘Коля’: 916224}

Какая это структура данных? Повторение phones={‘Ваня’: 9067345, ‘Коля’: 916224}

Слайд 31

Что делает метод add()?

Повторение

Что делает метод add()? Повторение

Слайд 32

Что делает оператор in?

Повторение

Что делает оператор in? Повторение

Слайд 33

Что напечатает программа?

Повторение

numbers = [1, 2, 3, 0]
print(numbers[0])
numbers.remove(1)
print(numbers)

Что напечатает программа? Повторение numbers = [1, 2, 3, 0] print(numbers[0]) numbers.remove(1) print(numbers)

Слайд 34

Повторение

Сдай лист с ответом учителю.
Получи лист другой команды.
Отметь правильные ответы и
посчитай

Повторение Сдай лист с ответом учителю. Получи лист другой команды. Отметь правильные
баллы.

?

?

?

Слайд 35

?

А теперь ответы!

? А теперь ответы!

Слайд 36

Список — это упорядоченный набор элементов.

Повторение

Список — это упорядоченный набор элементов. Повторение

Слайд 37

Элементы в списке упорядочены, во множестве нет.
Каждый элемент списка имеет номер (индекс),

Элементы в списке упорядочены, во множестве нет. Каждый элемент списка имеет номер
а во множестве нет.
Элементы в списке могут повторяться.

Повторение

Слайд 38

Это словарь

Повторение

phones={‘Ваня’: 9067345, ‘Коля’: 916224}

Ключ

Значение

Это словарь Повторение phones={‘Ваня’: 9067345, ‘Коля’: 916224} Ключ Значение

Слайд 39

Метод add()добавляет элемент в множество.

Повторение

Метод add()добавляет элемент в множество. Повторение

Слайд 40

Оператор in определяет,
входит ли элемент в словарь или множество.

Повторение

Оператор in определяет, входит ли элемент в словарь или множество. Повторение

Слайд 41

Программа:
Вывод:

Повторение

numbers = [1, 2, 3, 0]
print(numbers[0])
numbers.remove(1)
print(numbers)

1
[2, 3, 0]

Программа: Вывод: Повторение numbers = [1, 2, 3, 0] print(numbers[0]) numbers.remove(1) print(numbers) 1 [2, 3, 0]

Слайд 42

?

Подведём итоги

? Подведём итоги

Слайд 43

Работаем на платформе

mars.algoritmika.org

1 - заходим на платформу.
2 - выбираем задание «Структуры данных: задачи».

Работаем на платформе mars.algoritmika.org 1 - заходим на платформу. 2 - выбираем задание «Структуры данных: задачи».
Имя файла: Множества.pptx
Количество просмотров: 39
Количество скачиваний: 0