Чтобы удалить элемент из набора в Python, мы можем использовать метод Remove() или Discount(), чтобы принять имя элемента, который мы хотим удалить, в качестве аргумента. Мы также можем использовать метод pop() для удаления любого элемента из набора или определения набора для создания нового, содержащего все элементы исходного набора, кроме элементов, которые нужно удалить.
- С помощью функции Remove()
- С помощью функции discard()
- 3. С помощью функции pop()
- С помощью функции filter()
- Используя понимание множества
- Используя функцию Different()
- С помощью оператора –
С помощью функции Remove()
Метод Python set Remove() используется для удаления определенного элемента из набора. Функция принимает в качестве аргумента один элемент и удаляет его из набора.
Если элемент не найден в наборе, в Python выдается ошибка KeyError. Итак, прежде чем использовать этот метод, убедитесь, что элемент, который вы хотите удалить, присутствует в наборе.
Пример:
Cities = {"New York", "Los Angeles", "Chicago", "Miami", "Seattle"} City_to_remove = "Miami" Cities.remove(City_to_remove) print("Cities without", City_to_remove + ":", Cities)
Выход:
Major Cities without Miami: {'Chicago', 'New York', 'Los Angeles', 'Seattle'}
После реализации кода в редакторе Pycharm снимок экрана указан ниже.
Сообщение об ошибке, которое мы получим, упомянуто ниже:
С помощью функции discard()
Функция discard() в Python также используется для удаления определенного элемента из набора. Нам также необходимо передать имя элемента в качестве аргумента в функцию discard().
Но если элемента нет в наборе в Python, то он ничего не делает, и набор остаётся неизменным.
Давайте посмотрим пример этого:
parks = {"Yellowstone", "Grand Canyon", "Yosemite", "Zion"} park_to_be_removed = "Yosemite" parks.discard(park_to_be_removed) print("National Parks without", park_to_be_removed + ":", parks)
Выход:
National Parks without Yosemite: {'Yellowstone', 'Zion', 'Grand Canyon'}
Ниже приведен скриншот после реализации кода в редакторе Pycharm.
3. С помощью функции pop()
Случайный элемент можно удалить из набора и вернуть с помощью функции pop() в Python. Трудно определить, какой элемент будет удален, поскольку наборы неупорядочены.
Давайте возьмем это на примере:
states = {"California", "Texas", "New York", "Florida", "Ohio"} random_state = states.pop() print("Randomly Selected State:", random_state) print("Remaining States:", states)
Выход:
Randomly Selected State: Texas Remaining States: {'California', 'Florida', 'Ohio', 'New York'}
После выполнения кода в Pycharm результат можно увидеть на снимке экрана ниже.
С помощью функции filter()
Функция filter() позволяет нам создать новый набор в Python с элементами, которые удовлетворяют некоторым условиям, применяемым как функция.
Чтобы удалить элемент из набора в Python, мы можем использовать filter() с лямбда-функцией, чтобы создать набор без конкретных элементов.
states = {"California", "Texas", "New York", "Florida", "Ohio"} filtered_states = set(filter(lambda x: 'a' not in x.lower(), states)) print("States without 'a':", filtered_states)
Вывод: здесь мы отфильтровали элементы набора, которые не имеют алфавита «a», используя функцию low() в лямбда-функции.
States without 'a': {'Ohio', 'New York'}
Ниже приведен упомянутый скриншот, сделанный после выполнения кода.
Используя понимание множества
Мы также можем использовать понимание множества, чтобы создать новый набор без элементов, которые мы хотим удалить. Этот метод позволяет нам указать условия для удаления элемента из набора в Python.
Код:
states = {"California", "Texas", "New York", "Florida", "Ohio"} filtered_states = {x for x in states if 'i' not in x.lower()} print("States without 'i':", filtered_states)
Выход:
States without 'i': {'New York', 'Texas'}
Вот скриншот после реализации кода:
Используя функцию Different()
Метод Different() возвращает новый набор в Python, который будет содержать элементы, различающиеся между двумя наборами. мы можем передать имя элемента в наборе в качестве аргумента функции разницы.
Пример:
time_zones = {"Eastern", "Central", "Mountain", "Pacific", "Hawaii"} filtered_time_zones = time_zones.difference({"Hawaii"}) print("The filtered time zone are:", filtered_time_zones)
Вывод: мы можем передать несколько элементов в набор в качестве аргументов функции Different в Python.
The filtered time zone are: {'Pacific', 'Central', 'Mountain', 'Eastern'}
Ниже мы предоставили скриншот кода:
С помощью оператора –
Оператор – в Python также можно использовать для определения разницы. Эта функция возвращает новое множество без элементов, которые нужно удалить.
Пример:
presidents = {"Washington", "Lincoln", "Roosevelt", "Cleveland", "Grant"} non_consecutive_term = {"Cleveland"} remaining_presidents = presidents - non_consecutive_term print("Presidents without non-consecutive term:", remaining_presidents)
Вывод: мы снова можем предоставить любое количество элементов в наборе для удаления в Python.
Presidents without non-consecutive term: {'Grant', 'Washington', 'Lincoln', 'Roosevelt'}
После запуска кода в редакторе Pycharm мы сделали снимок экрана ниже: