6.1 Функции remove() и discard()

Множества в Python предоставляют несколько способов удаления элементов. Ниже мы рассмотрим методы remove(), discard(), pop(), clear(), а также использование оператора del для удаления множества целиком. Каждый метод имеет свои особенности и применения.

Два самых распространенных способа удаления элементов — это методы remove() и discard().

Метод remove()

Метод remove() удаляет указанный элемент из множества. Если элемент не существует в множестве, возникает ошибка KeyError.


my_set = {1, 2, 3, 4, 5}
my_set.remove(3)
print(my_set)  # Вывод: {1, 2, 4, 5}
            
# Если элемента нет в множестве, возникает ошибка
my_set.remove(6)  # KeyError: 6
        

Метод discard()

Метод discard() также удаляет указанный элемент из множества, но, в отличие от remove(), он не вызывает ошибку, если элемента нет в множестве.


my_set = {1, 2, 3, 4, 5}
my_set.discard(3)
print(my_set)  # Вывод: {1, 2, 4, 5}
            
# Если элемента нет в множестве, ошибки не будет
my_set.discard(6)
print(my_set)  # Вывод: {1, 2, 4, 5}
        

6.2 Функции pop() и clear()

Еще часто используют такие функции как pop() и clear()

Метод pop()

Метод pop() удаляет и возвращает случайный элемент из множества. Если множество пустое, возникает ошибка KeyError.


my_set = {1, 2, 3, 4, 5}
removed_element = my_set.pop()
print(removed_element)   # Вывод: Один из элементов множества, например, 1
print(my_set)  # Вывод: Оставшиеся элементы множества, например, {2, 3, 4, 5}
            
# Если множество пустое, возникает ошибка
empty_set = set()
empty_set.pop()  # KeyError: 'pop from an empty set'
        

Пример: Удаление всех элементов из множества с помощью pop()

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


my_set = {1, 2, 3, 4, 5}
print("Исходное множество:", my_set)
            
while my_set:
    removed_element = my_set. pop()
    print(f"Удален элемент: {removed_element}, Оставшиеся элементы: {my_set}")
            
print("Множество пустое:", my_set)
        

Вывод


Исходное множество: {1, 2, 3, 4, 5}
Удален элемент: 1, Оставшиеся элементы: {2, 3, 4, 5}
Удален элемент: 2, Оставшиеся элементы: {3, 4, 5}
Удален элемент: 3, Оставшиеся элементы: {4, 5}
Удален элемент: 4, Оставшиеся элементы: {5}
Удален элемент: 5, Оставшиеся элементы: set()
Множество пустое: set()
        

Метод clear()

Метод clear() удаляет все элементы из множества, делая его пустым.

Пример


my_set = {1, 2, 3, 4, 5}
my_set.clear()
print(my_set)  # Вывод: set()
        

6.3 Использование оператора del

Оператор del в Python используется для удаления объектов. При работе с множествами оператор del может применяться для удаления самого множества целиком, освобождая память. Ниже будет пара примеров использования оператора del для работы с множествами.

Удаление множества

Когда оператор del используется для удаления множества, это множество больше не существует, и все его элементы удаляются из памяти


my_set = {1, 2, 3, 4, 5}
print("Исходное множество:", my_set)
            
# Удаление множества
            del my_set
            
# Попытка доступа к удаленному множеству вызовет ошибку
# print(my_set)  # NameError: name 'my_set' is not defined
        

В этом примере множество my_set удаляется с помощью оператораdel. После этого любая попытка доступа к my_set вызовет ошибку NameError, поскольку объект больше не существует.

undefined
2
Задача
Модуль 1: Python Core, 6 уровень, 5 лекция
Недоступна
Котовасия
Котовасия
undefined
2
Задача
Модуль 1: Python Core, 6 уровень, 5 лекция
Недоступна
Фруктовица
Фруктовица