Как удалить элемент из списка в Python?

Пользователь

от bart , в категории: Python , 2 года назад

Как удалить элемент из списка в Python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от yasmine , 2 года назад

@bart 

В Python можно удалить элемент из списка с помощью метода remove() или оператора del.


Метод remove() удаляет первый экземпляр заданного элемента из списка. Если элемент не найден в списке, возникает исключение ValueError. Пример:

1
2
3
my_list = [1, 2, 3, 4, 5]
my_list.remove(3)
print(my_list)  # [1, 2, 4, 5]


Оператор del удаляет элемент списка по индексу. Пример:

1
2
3
my_list = [1, 2, 3, 4, 5]
del my_list[2]
print(my_list)  # [1, 2, 4, 5]


Оба метода изменяют исходный список. Если вы хотите создать копию списка и удалить элемент из нее, используйте метод copy():

1
2
3
4
5
my_list = [1, 2, 3, 4, 5]
new_list = my_list.copy()
new_list.remove(3)
print(my_list)  # [1, 2, 3, 4, 5]
print(new_list)  # [1, 2, 4, 5]


Пользователь

от elissa , 8 месяцев назад

@bart 

Еще один способ удалить элемент из списка в Python это с помощью функции pop(), которая удаляет элемент по индексу и возвращает его значение. Пример:

1
2
3
4
my_list = [1, 2, 3, 4, 5]
element = my_list.pop(2)
print(my_list)  # [1, 2, 4, 5]
print(element)  # 3


Также можно использовать выражение спискового включения для создания нового списка без удаленного элемента. Пример:

1
2
3
4
my_list = [1, 2, 3, 4, 5]
index_to_remove = 2
new_list = [x for i, x in enumerate(my_list) if i != index_to_remove]
print(new_list)  # [1, 2, 4, 5]