JavaRush /Курси /Модуль 1: Python Core /Видалення елементів

Видалення елементів

Модуль 1: Python Core
Рівень 6 , Лекція 5
Відкрита

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, оскільки об'єкт більше не існує.

Коментарі (5)
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ
negoda Рівень 31
18 липня 2025
Решение второй задачи

fruits_set = {'apple', 'banana', 'cherry'}

delete_fruit = input()

fruits_set.discard(delete_fruit)

print(fruits_set)
negoda Рівень 31
18 липня 2025
Решение первой задачи

names_set = {'Мурка', 'Васька', 'Мурзик', 'Барсик', 'Сніжок'}

attempt = 0

while names_set:
    a = input()
    attempt += 1
    if a in names_set:
        print(f'Ви вгадали! Це була спроба : {attempt}')
        names_set.discard(a)
    else:
        print(f'Ви не вгадали! Це була спроба : {attempt}')
Mykola Рівень 21
2 лютого 2025
Котовасія - нарешті перша задача, де я відчув, що можу хоч і не суттєве, проте щось більш-менш практичне створити. Хотілося б побільше таких. 😃
Bacchus Рівень 16
10 грудня 2025
От тобі ще цікава задача: Створити программу, яка має генерувати випадкове число від 1 до 100. Программа запитує в користувача число і відповідає більше вказане число за загадане чи менше. Як користувач відгадає число слід вказати кількість спроб та запропонувати зіграти ще раз. Якщо користвувач обере нову гру, то без перезапуску программи має генеруватись нове .число і т.д.
Марк Рівень 50
15 грудня 2024
Котовасія = в завданні не вказано що програма повинна виводити кількість спроб у кінці (опис завдання не відповідає перевіркам)