яндекс
  • 1
    Ввод и вывод данных
    • Задачи
  • 2
    Условия
    • Задачи
  • 3
    Цикл for
    • Задачи
  • 4
    Строки
    • Задачи
  • 5
    Цикл while
    • Задачи
  • 6
    Списки
    • Задачи
  • 7
    Двумерные массивы
    • Задачи
  • 8
    Словари
    • Задачи
  • 9
    Множества
    • Задачи
  • 10
    Функции и рекурсия
    • Задачи
  • к

Занятие 9. Множества

Задача «Объединение данных»

Уровень сложности:

иконка человека красный иконка человека белая иконка человека зеленая Pythonlib
Вы работаете над проектом, связанным с анализом данных из различных источников. У вас есть два отдельных списка данных, представляющих идентификаторы пользователей, собранные из двух разных систем. Вам нужно объединить эти списки в одно множество, чтобы получить полный список уникальных пользователей для дальнейшего анализа.
 
Пример:
Input:
            [1, 2, 3, 4, 5, 5, 6]
           [4, 5, 6, 7, 8, 9, 9, 10] Output:             {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
 
Подсказка:
Множества в Python — это неупорядоченные коллекции уникальных элементов. Они обладают рядом полезных свойств и методов, которые позволяют эффективно выполнять операции над данными, такие как объединение, пересечение, разность и другие.
 
Основные характеристики множеств
Уникальные элементы: В множестве не может быть дублирующихся элементов.
Неупорядоченность: Элементы множества не имеют определенного порядка.
Изменяемость: Элементы множества можно добавлять и удалять, хотя сами множества изменяемы, они могут содержать только неизменяемые (хешируемые) объекты, такие как числа, строки и кортежи.
 
Создание множеств
 
Пустое множество
Для создания пустого множества необходимо использовать функцию set(), так как {} создаёт пустой словарь.
my_set = set()
 
Множество с элементами
my_set = {1, 2, 3, 4, 5}
 
Или используя функцию set():
my_set = set([1, 2, 3, 4, 5])
 
Основные операции с множествами
 
Добавление элементов
 
Используется метод add()
my_set = {1, 2, 3}
my_set.add(4)
print(my_set)  # Вывод: {1, 2, 3, 4}
 
Удаление элементов
remove() удаляет указанный элемент, вызывает ошибку KeyError, если элемент не найден.
discard() удаляет указанный элемент, не вызывает ошибку, если элемент не найден.
pop() удаляет и возвращает случайный элемент множества.
my_set = {1, 2, 3}
my_set.remove(2)
print(my_set)  # Вывод: {1, 3}

my_set.discard(4)  # Ошибки не будет, несмотря на отсутствие элемента

popped_element = my_set.pop()
print(popped_element)  # Вывод: 1 или 3
print(my_set)  # Вывод: оставшийся элемент
 
Очистка множества
Метод clear() удаляет все элементы из множества.
my_set = {1, 2, 3}
my_set.clear()
print(my_set)  # Вывод: set()
 
Операции над множествами
 
Объединение (Union)
Операция объединения возвращает новое множество, содержащее все уникальные элементы из обоих множеств. Используется оператор | или метод union().
set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1 | set2
# или
union_set = set1.union(set2)
print(union_set)  # Вывод: {1, 2, 3, 4, 5}
 
Пересечение (Intersection)
Операция пересечения возвращает новое множество, содержащее только те элементы, которые присутствуют в обоих множествах. Используется оператор & или метод intersection().
set1 = {1, 2, 3}
set2 = {3, 4, 5}
intersection_set = set1 & set2
# или
intersection_set = set1.intersection(set2)
print(intersection_set)  # Вывод: {3}
 
Разность (Difference)
Операция разности возвращает новое множество, содержащее элементы, которые присутствуют в первом множестве, но отсутствуют во втором. Используется оператор - или метод difference().
set1 = {1, 2, 3}
set2 = {3, 4, 5}
difference_set = set1 - set2
# или
difference_set = set1.difference(set2)
print(difference_set)  # Вывод: {1, 2}
 
Симметрическая разность (Symmetric Difference)
Операция симметрической разности возвращает новое множество, содержащее элементы, которые присутствуют в одном из множеств, но не в обоих. Используется оператор ^ или метод symmetric_difference().
set1 = {1, 2, 3}
set2 = {3, 4, 5}
symmetric_difference_set = set1 ^ set2
# или
symmetric_difference_set = set1.symmetric_difference(set2)
print(symmetric_difference_set)  # Вывод: {1, 2, 4, 5}
 
Solution
Входные данные
Выходные данные

Тесты

2 3 6 1 1
2 3 6 1 1
2 3 6 1 1
2 3 6 1 1
2 3 6 1 1
2 3 6 1 1

🎉 Поздравляем! 🎉

Ты отлично справился с задачей! Это был непростой вызов, но ты нашёл правильное решение. Ты на шаг ближе к мастерству в программировании! Продолжай в том же духе, ведь каждый пройденный этап делает тебя ещё сильнее.

AD

Реклама

red-snake blue-snake green-snake

Запускаем ваш код...