Full transcript
Начало
0:00привет в ходе этого урока мы с вами
0:01изучим множество в языке питон мы изучим
0:04set а также фроузен set
0:06а перед началом я бы хотел
0:07порекомендовать сайт айти прагер точка
0:09ком на этом сайте вы найдете код
0:11домашнее задание и много другой полезной
0:13информации ссылка на этот урок на сайте
0:15будет в описании к этому видео
0:16множество это на самом деле те же самые
Что такое множества?
0:19списке вот только множество все элементы
0:21они идут в случайном порядке а также в
0:24множестве не может быть повторяющихся
0:26элементов зачем множеством могут быть
0:29вообще полезны предположим мы хотим
0:31получить от пользователя опять же
0:33какие-либо определенные данные пускай
0:35это будет строка где у нас будет
0:37прописан и полностью все его хобби
0:39ну предположим что то вот в таком духе
0:41дальше мы эту строку можем например
0:43разбить о какому-либо символ для этого
0:46можем использовать метод сплит что мы
0:48уже ранее с вами изучали и дальше я бы
0:50хотел сделать так что и хочу удалить
0:52полностью все повторяющиеся элементы из
0:55полученного списка так такое можно
0:57сделать можно конечно это самостоятельно
1:00прописать цикл продумать весь этот
1:01алгоритм но куда проще можно список
1:04преобразовать вы множество и тем самым
1:06мы сразу же удалим полностью все
1:08элементы все повторяющиеся элементы из
1:11подобного списка то есть во первых вы
1:14можете самостоятельно создавать
1:15множество
1:16и тем самым они будут будут не иметь
1:19повторяющихся элементов они будут всех
1:22случайном порядке но также вы можете
1:24преобразовывать уже готовые списке вы
1:26множество тем самым вы будете удалять
1:29все повторяющиеся элементы плюс если вам
1:31нужно вдруг за shuffle вдруг необходимо
1:34как расположить все элементы в случайном
1:36порядке по 5 же множество это сделать
1:38максимально быстро и максимально просто
Создание множества
1:40теперь от слов давайте перейдем к делу
1:42для создания множества вы можете
1:44использовать два доступных вам способом
1:47во первых вы можете использовать функцию
1:48сет и сюда в эту функцию обычно передают
1:51просто определенное некое слово ну
1:53допустим не всегда передам слово хеллоу
1:55и дальше мы давайте попробуем вывести
1:57сразу это множество и мы получим то что
1:59у нас здесь будет всего лишь четыре
2:01элемента то есть повторяющийся символ он
2:03был удален он не был добавлен множество
2:06а также все элементы вы можете заметить
2:08что они в случайном порядке
2:10здесь расположены так вот первый способ
2:12как создать множество это за счет
2:14пункции сэр обычно функция сет
2:17используется если нам нужно быстро
2:19преобразовать какой-то список вы
2:20множество или если нам нужно
2:22преобразовать некое слово который по
2:25сути той которая тоже по сути является
2:26списком
2:27вы тоже самое множество но если нам
2:30нужно создать множество самостоятельно
2:32то обычно используется не функция сайт
2:34обычно используются фигурные скобки и да
2:36здесь я могу согласен и согласиться с
2:38тем что мы использовали фигурные скобки
2:40в прошлом уроке для создания словарей но
2:43тут дело заключается в том что если мы с
2:45вами в фигурных скобках будем
2:47прописывать как ключ так и значение в
2:50таком случае мы всегда с вами будем
2:52создавать именно словарь
2:53если же мы будем использовать
2:55исключительно значения как я вот
2:58например сейчас прописываю то в таком
3:00случае мы на самом-то деле создаём
3:02именно с вами множество то есть если мне
3:04указывать ключ это мы создаем множество
3:05если указывать ключ это мы создаем
3:07словарь ну и вот вы можете заметить что
3:09я сюда добавил 2 повторяющихся элемент а
3:12если такое сейчас запустить то заметим
3:14что видите опять же они все в случайном
3:16порядке
3:16выведены в нашем случае так получилось
3:18что они еще в порядке возрастания и
3:21здесь удаляю и здесь повторяющиеся
3:24элементы они были удалены то есть
3:25последним вот эта вот пятерка она была
3:27удалена из всего этого множества работа
Работа со множеством
3:30со множествами она здесь точно такая же
3:32как и работа с обычными списками вот
3:35только здесь в множестве мы не можем
3:37обратиться к определенному элементы по
3:38его
3:39индексу и не можем его поменять потому
3:41что если мы такое попробуем сделать у
3:43нас всегда будет выдаваться ошибка в то
3:45же время удалять а также добавлять новые
3:47элементы мы всегда спокойно можем если
3:50нам нужно добавить новый элемент мы
3:51используем функцию id здесь допустим
3:53укажем некое число ну например 32 и вот
3:56у меня это число было как раз сюда
3:58добавлено если мне необходимо добавить
4:00несколько сразу чисел или просто
4:02несколько значений то соответственно
4:05можно использовать функцию апдейт и
4:06здесь давайте я попробую добавить даже
4:08другие типы данных это так же спокойно
4:10здесь может все работать если я добавлю
4:13к кида повторяющиеся типы данных то
4:15конечно же они не будут добавлены но все
4:17остальные вот вы можете заметить что
4:18были сюда спокойно добавлен также если
4:21вам нужно
4:22некий элемент вы можете использовать
4:24функцию remove здесь вы указываете
4:26просто значение элемента предположим
4:29хочу удалить элемент у которого значения
4:31идет как true
4:32если такое запустить то вы замечаете что
4:34этого элемента больше здесь не
4:35существует
4:36если вы если вам нужно удалить первый
4:38элемент в данном случае именно первая
4:40линия то вы можете использовать метод
4:42об ну и вот после запуска мы замечаем
4:44что 32 это число нам вики здесь было
4:47удалено и вот тут также больше не
4:49существует если нужно полностью очистить
4:51весь все множество то можно использовать
4:54такую функцию как clear опять же давайте
4:56попробуем с вами запустить в таком
4:58случае видите выдается просто set то
5:00есть это как бы говорит о том что у нас
5:01есть пустое множеством в нем нет никаких
5:03элементов также давайте рассмотрим
5:05момент когда у нас есть некий список
Удаление повторений
5:08что состоит из повторяющихся элементов и
5:10нам нужно удалить из этого списка все
5:12повторяющиеся элементы чтобы такое
5:15реализовать мы можем принципе сразу же в
5:17этот же список поместить некое новое
5:19значение и здесь я просто вызову на
5:21функцию сет и в него же в этот список я
5:24помещаю нас такое можно реализовать мы
5:27как бы вот здесь создали первый список
5:29а здесь мы и по факту удаляем предыдущий
5:32список и создаем новый список да этот
5:34список он уже будет именно множеством
5:36где у нас не будут повторяющихся
5:38значений
5:39ну либо если хотите сохранить предыдущее
5:41значение
5:42предыдущий список в таком случае можно
5:44здесь назвать как-то там new на мтс
5:46например и
5:47именно этот new на мтс потом выводить
5:49например на экран если сейчас такое
5:52запустить то мы с вами заметим что мы
5:54получаем именно множество который
5:56состоит из всего лишь трех элементов и
5:58нет у нас здесь повторяющихся элементов
6:00дату вот эти вот все лишнее питер и они
6:02были попросту удалены таким образом вы
6:05легко можете удалять ненужные элементы
6:07из списков ну и крайне что нам остается
Множество «frozenset»
6:09рассмотреть в ходе этого урока это про у
6:11сенсея
6:12или другими словами замороженное
6:14множество по сути про ужин сайт это
6:16объединение кортежа плюс множество то
6:19есть мы по факту создаем с вами обычное
6:21множество единственное что мы не сможем
6:23никак видоизменять элементы внутри
6:25самого этого множества и то бишь это как
6:28бы функционал кортежей ну и чтобы
6:30создать frozen set мы с вами можем
6:32сделать следующее давайте мы здесь
6:34создадим что-то в духе
6:35нью дей там еще некое новое значение и
6:38здесь мы просто используем функцию про
6:40один сет в нее же мы передаем некий
6:43список и чтобы сюда передать некий
6:45список мы открываем квадратные скобки и
6:47передаем сюда определенные значения
6:49давайте также эти значения скопирую из
6:51предыдущих элементов и просто их вот
6:54множество всегда действительно элементов
6:56сюда и добавим дальше если мы с вами
6:58попробуем это вывести на экран то мы
7:00заметим то что у нас будут применены как
7:03бы свойства что доступный для множеств
7:06то есть здесь
7:07элемент они перемешаны а также нету
7:09повторяющихся значений в то же время
7:11если я попробую здесь обратиться к new
7:14да там и попробую обратиться к такому
7:17как такой функции как от такой функции в
7:20принципе здесь не существует
7:22если что-то попытаюсь здесь добавить то
7:24конечно будет вызываться ошибка потому
7:26что здесь уже идут свойства картриджей а
7:29кортежа я напомню мы в них не можем
7:32ничего не добавлять мы в них не можем мы
7:34из них ничего не можем удалять и мы
7:36ничего в них не можем видоизменять здесь
7:39получается точно та же самая логика то
7:41есть мы как бы создаем с вами кортеж
7:43плюс множество да это и называется
7:45фроузен
7:46получается что за счет set а также про
Заключительная часть
7:49один сет мы можем создавать различные
7:50множество
7:51где у нас не будет повторяющихся
7:53элементов а также все элементы будут
7:55выведены в хаотичном порядке ну что ж на
7:58этом у меня все надеюсь урок вам
7:59понравился если так то не забывайте
8:01подписываться также вступать наши
8:02соцсети все ссылки на них будут в
8:04описании к этому видео у меня ж на этом
8:06все до скорых встреч пока