Решение модуля 6.10 Инди-курс программирования на Python

Модуль 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))         # выводим длину полученного множества

Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы

Понравилась статья? Поделиться с друзьями:
Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x