Модуль 6.10 (Знакомство с множествами. Тип данных set).
Множество (тип данныхset
) – это неупорядоченная коллекция уникальных элементов
. Здесь стоит подчеркнуть слово уникальных, потому что тип данных set не допустит, чтобы в одной коллекции хранились повторяющиеся элементы.
Как создать пустое множество и сохранить его в переменной
d
?
d = set()
Создайте пустое множество и сохраните его в переменную
my_set
, затем выведите на экран эту переменную
my_set = set() # при помощи функции set() не передавая ей значений создаем пустое множество print(my_set) # выводим наше пустое множество
Какое количество элементов будет содержать множество, хранящееся в переменной
my_set
?my_set = set([1, 2, 2, 2, 2, 1, 1, 2, 2, 1, 2])
2
Множество
не может содержать повторяющиеся данные
Элементами множества могут быть
только неизменяемые объекты
Что произойдет после выполнения данного кода?
my_set = {8, 4, 7, 3, 6} print(sorted(my_set))
[3, 4, 6, 7, 8]
Что произойдет после выполнения данного кода?
my_set = {8, 4, 7, 3, 6} print(reversed(my_set))
ошибка TypeError: 'set' object is not reversible
Перед вами располагается список
my_list
. Ваша задача в переменнуюmy_set
сохранить множество уникальных элементов, хранящихся в спискеmy_list
. И в качестве ответа необходимо вывести среднее арифметическое всех элементов найденного множестваmy_set
.
my_list = [56, 59, 53, 75, 62, 61, 75, 65, 59, 62, 64, 53, 54, 62, 69, 53, 55, 62, 54, 66, 55, 57, 58, 75, 72, 55, 51, 56, 71, 66, 57, 56, 59, 73, 68, 57, 50, 54, 62, 68, 59, 64, 59, 59, 71, 68, 57, 54, 53, 72] my_set = set(my_list) # переобразуем список во множество print(sum(my_set) / len(my_set)) # выводим среднее арифметическое этого множества(сумма разделить на количество). Сумму находим функцией sum(), а количество(длину) функцией - len()
В наши дни очень много парней ставят себе фотографии красивых девушек на аватарки на форумах. Из-за этого очень часто сложно определить пол пользователя на форуме. В прошлом году наш герой пообщался в чате на форуме с одной красоткой (как он думал). После этого наш герой и предполагаемая красотка стали общаться еще чаще и в конце концов стали парой в сети.
Но вчера наш герой захотел увидеть свою красотку в реальной жизни и, каково же было его удивление, когда красоткой оказался здоровенный мужчина! Наш герой очень расстроился и теперь он, наверное, никогда больше не сможет полюбить. Сейчас к нему пришла в голову идея, как по имени пользователя определить его пол.
Вот его метод: если количество различных символов в имени пользователя нечетное, тогда пользователь мужского пола, иначе — женского. Вам дана строка, обозначающая имя пользователя, помогите нашему герою определить по ней пол пользователя по описанному методу.
name = input() # получаем имя пользователя name_set = set(name) # преобразуем из строки во множество, что бы узнать его уникальные символы if len(name_set) % 2 == 0: # если длина множества четное - то женский пол и выводим положительный ответ, иначе - отрицательный print("CHAT WITH HER!") else: print("IGNORE HIM!")
Конь Валера собрался с друзьями на вечеринку. Он давно следит за тенденциями моды и поэтому знает, что сейчас очень популярно носить все подковы разного цвета. С прошлого года у Валеры остались четыре подковы, но, возможно, некоторые из них имеют одинаковый цвет. В этом случае, чтобы не ударить в грязь лицом перед своими стильными товарищами, ему нужно сходить в магазин и купить дополнительно несколько каких-нибудь подков.
К счастью в магазине продаются подковы всех возможных цветов, и у Валеры имеется достаточно денег, чтобы купить любые четыре. Однако в целях экономии он хотел бы потратить как можно меньше денег, поэтому вам нужно помочь Валере и определить, какое минимальное количество подков нужно купить, чтобы он смог надеть на вечеринку четыре подковы различного цвета.
color = input().split() # получаем строку с цветами(числами) и разбиваем на список color_set = set(color) # преобразовываем список во множетво print(4 - len(color_set)) # выводим сколько подков ему не хватает другого цвета(всего надо 4, мы узнаем длину множества с его разными подковами и 4 минусуем с длиной(количеством))
Слово или предложение на некотором языке называется панграммой, если в нем встречаются все символы алфавита этого языка хотя бы один раз. Панграммы часто используют в типографии для демонстрации шрифтов или тестирования средств вывода различных устройств.
Вам дана строка, состоящая из маленьких и больших латинских букв. Проверьте, является ли эта строка панграммой. Считается, что строка содержит букву латинского алфавита, если эта буква встречается в верхнем или нижнем регистре.
text = input().lower() # получаем строку и опускаем в нижний регистр text_set = set(text) # преобразуем строку во множество, в котором будут храниться буквы использованные в строке if len(text_set) == 26: # проверяем если длина множества с использованными буквами равна длине алфавита, то выводим YES, иначе NO print('YES') else: print('NO')
Кажется, еще совсем недавно наступил новый 2013 год. А знали ли Вы забавный факт о том, что 2013 год является первым годом после далекого 1987 года, в котором все цифры различны?
Теперь же Вам предлагается решить следующую задачу: задан номер года, найдите наименьший номер года, который строго больше заданного и в котором все цифры различны.
year = int(input()) # получаем год, после которого надо найти уникальный год while True: # цикл выполняется пока не закончим его сами year += 1 # для того чтобы перейти к следующему году для проверки к году прибавляем 1 if len(set(str(year))) == 4: # преобразуем для начала число в строку, чтобы затем конвертируем воо множество, и если в нем хранится 4 цифры, то год уникален, print(year) # выводим уникальный год break # заканчиваем цикл, чтобы не зациклить и он не искал следующий год
Недавно у Антона появилось множество, состоящее из маленьких латинских букв. Он аккуратно выписал все буквы, которые в него входят в одну строку через запятую. Для красоты он так же добавил в начало этой строки открывающуюся фигурную скобку, а в конец — закрывающуюся.
К сожалению, Антон иногда забывал, что уже записал некоторую букву, и выписывал ее снова. Он просит вас посчитать общее число различных букв в его множестве.
letters = input() # получаем строкой множество # генератором во множество добавляем только буквы(мы это проверяяем с помощью метода .isalpha() a = {i for i in letters if i.isalpha()} print(len(a)) # выводим длину полученного множества
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы