Remove pop del python разница

Difference between del, remove and pop on lists

In this article, we will learn the difference between the del, remove, and pop functions of a list in Python. We will use these built-in functions and discuss the difference with examples. Let’s first have a quick look over what is a list in Python.

Python List

Python has a built-in data type called list. It is like a collection of arrays with different methodology. Data inside the list can be of any type say, integer, string or a float value, or even a list type. The list uses comma-separated values within square brackets to store data. Lists can be defined using any variable name and then assigning different values to the list in a square bracket. The list is ordered, changeable, and allows duplicate values. For example,

list1 = ["Ram", "Arun", "Kiran"] list2 = [16, 78, 32, 67] list3 = ["apple", "mango", 16, "cherry", 3.4]

List support three different functions to delete elements from the given list. Let us discuss the different effects of the three different methods to remove an element from a list.

Читайте также:  Php postgresql pdo connect

Python del

Python list has a keyword del to remove the elements of a given list. It can remove the element from a specific index, can remove the entire list, and can also perform list slicing. The index is passed as an argument to del. It returns IndexError if the specified index is not present.

list1 = [9,8,7,6] del list1[1] print(list1)

Example: Delete an entire list

It will return an error if you try to print the deleted list.

Example: Delete a part of the list

This also allows avoidance of an IndexError if the index is not in the list.

list1 = [9, 8, 7, 6] del list1[2:] print(list1)

Python remove() Function

Python list has a function remove() to remove the elements of a given list. It removes the first matching value instead of the index, and the value is passed as an argument. It searches the list to find the value and deletes the first matching item it finds. It raises a ValueError if there is no matching value found.

Example: Delete an Element of List

list1 = [0, 2, 3, 2] list1.remove(2) print(list1)

Example: Raises ValueError if not found

list1 = [0, 2, 3, 2] list1.remove(6) print(list1)

Traceback (most recent call last):
File «/home/8766bc2d8b0d8fb2b3027df5040c0f1a.py», line 2, in
list1.remove(6)
ValueError: list.remove(x): x not in list

Python pop() Function

Python list has a function pop() to remove the elements of a given list. It removes the element at a specific index and returns it. It is always preferred to use pop() when you have to delete the last element of the list. It raises an IndexError if the index is out of range.

Example: Deletes specific element

list1 = [4, 3, 5] #prints the deleted element print("Deleted element- ", list1.pop(1)) #prints updated list print("Updated list- ",list1)

Deleted element- 3
Updated list- [4, 5]

Example: Raises IndexError if the index is out of range

list1 = [0, 2, 3, 2] list1.pop(6) print(list1)

Traceback (most recent call last):
File «/home/eda51ec0836955c0a07d36bf260b03cc.py», line 2, in
list1.pop(6)
IndexError: pop index out of range

A Brief Comparision among del, remove, and pop in Python List.

It takes the specified index and removes the value at that index.

It takes a value and removes the first occurrence of that value.

It takes index (when given, else take last) and removes the value at that index.

It limits itself to a simple deletion.

It is the only one that searches the item.

It is the only one that returns the value.

Syntax- del list[index] or del list

Syntax- list.pop(index) or list.pop()

It throws an index error when the index does not exist in the list.

It throws a value error when the value does not exist in the list.

It throws an index error when an index is out of range.

del can be used for any class object.

remove is bounded to specific classes.

pop is bounded to specific classes.

del basically works on the index.

Remove basically works on the value.

pop basically works on the index.

In Python, del is a keyword.

In Python, remove() is an in-built method.

In Python, pop() is an in-built method.

Conclusion

In this article, we learned about the differences between the three methods of the list to remove elements such as pop() , remove() and del . We discussed various examples with the help of a code.

Источник

Удаление элемента из списка в Python (clear, pop, remove, del)

Тип данных List в Python помогает сохранять разные типы данных в определенной связанной последовательности. Данные записываются в квадратные скобки и разделяются запятыми.

В Python есть несколько методов для удаления элементов из списка: remove() , pop() и clear() . Помимо них также существует ключевое слово del .

Пример списка:

 
 
my_list = ['Python', 50, 11.50, 'Alex', 50, ['A', 'B', 'C']]

Индекс начинается с 0. В списке my_list на 0-ой позиции находится строка «Python». Далее:

  1. Целое число 50
  2. Число с плавающей точкой 11.50
  3. Снова строка — «Alex»
  4. Еще одно число 50
  5. Список из строк «A», «B» и «C»

Метод remove()

Метод remove() — это встроенный метод, который удаляет первый совпадающий элемент из списка.

Передается элемент, который нужно удалить из списка.

Метод не возвращает значений.

Как использовать:

  • Если в списке есть повторяющиеся элементы, первый совпадающий будет удален.
  • Если элемента нет, будет брошена ошибка с сообщением о том, что элемент не найден.
  • Метод не возвращает значений.
  • В качестве аргумента нужно передать валидное значение.

Пример: использование метод remove() для удаления элемента из списка

В этом списке есть строки и целые числа. Есть повторяющиеся элементы: строка «Mars» и число 12.

 
 
my_list = [12, 'USA', 'Sun', 14, 'Mars', 12, 'Mars'] my_list.remove(12) # удаляем элемент 12 в начале print(my_list) my_list.remove('Mars') # удаляем первый Mars из списка print(my_list) my_list.remove(100) # ошибка print(my_list)
['USA', 'Sun', 14, 'Mars', 12, 'Mars'] ['USA', 'Sun', 14, 12, 'Mars'] Traceback (most recent call last): File "wb.py", line 6, in my_list.remove(100) # ошибка ValueError: list.remove(x): x not in list

Метод pop()

Этот метод удаляет элемент на основе переданного индекса.

Принимает лишь один аргумент — индекс.

  • Для удаления элемента списка нужно передать его индекс. Индексы в списках стартуют с 0. Для получения первого передайте 0. Для удаления последнего передайте -1.
  • Этот аргумент не является обязательным. Значение по умолчанию равно -1, поэтому по умолчанию будет удален последний элемент.
  • Если этот индекс не найден или он вне диапазона, то метод выбросит исключение IndexError: pop index .

Возвращает элемент, удаленный из списка по индексу. Сам же список обновляется и больше не содержит этот элемент.

Пример: использования метода pop() для удаления элемента

Попробуем удалить элемент с помощью pop:

Удалим из списка «Sun». Индекс начинается с 0, поэтому индекс для «Sun» будет 2.

 
 
my_list = [12, 'USA', 'Sun', 14, 'Mars', 12, 'Mars'] # Передавая индекс как 2, чтобы удалить Sun name = my_list.pop(2) print(name) print(my_list) # метод pop() без индекса - возвращает последний элемент item = my_list.pop() print(item) print(my_list) # передача индекса за пределами списка item = my_list.pop(15) print(item) print(my_list)
Sun [12, 'USA', 14, 'Mars', 12, 'Mars'] Mars [12, 'USA', 14, 'Mars', 12] Traceback (most recent call last): File "wb.py", line 14, in item = my_list.pop(15) IndexError: pop index out of range

Метод clear()

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

Нет ни параметров, ни возвращаемого значения.

Пример

Метод clear() очистит данный список. Посмотрим:

 
 
my_list = [12, 'USA', 'Sun', 14, 'Mars', 12, 'Mars'] element = my_list.clear() print(element) print(my_list)

Ключевое слово del

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

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

Синтаксис: del list[start:stop] .

Вот пример того как с помощью del можно удалить первый, последний и сразу несколько элементов списка:

 
 
my_list = list(range(7)) print("Исходный список", my_list) # Чтобы удалить первый элемент del my_list[0] print("После удаления первого элемента", my_list) # Чтобы удалить элемент по индексу del my_list[5] print("После удаления элемента", my_list) # Чтобы удалить несколько элементов del my_list[1:5] print("После удаления нескольких элементов", my_list)
Исходный список [0, 1, 2, 3, 4, 5, 6] После удаления первого элемента [1, 2, 3, 4, 5, 6] После удаления элемента [1, 2, 3, 4, 5] После удаления нескольких элементов [1]

Как удалить первый элемент списка

Для этого можно использовать методы remove() , pop() . В случае с remove потребуется передать индекс первого элемента, то есть 0. Также можно использовать ключевое слово del.

Пример показывает применение всех этих способов.

 
 
my_list = ['A', 'B', 'C', 'D', 'E', 'F'] print("Список", my_list) my_list.remove('A') print("С использованием remove()", my_list) my_list = ['A', 'B', 'C', 'D', 'E', 'F'] my_list.pop(0) print("С использованием pop()", my_list) my_list = ['A', 'B', 'C', 'D', 'E', 'F'] del my_list[0] print("С использованием del", my_list)
Список ['A', 'B', 'C', 'D', 'E', 'F'] С использованием remove() ['B', 'C', 'D', 'E', 'F'] С использованием pop() ['B', 'C', 'D', 'E', 'F'] С использованием del ['B', 'C', 'D', 'E', 'F']

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

Методы remove() и pop() могут удалить только один элемент. Для удаления нескольких используется метод del.

Например, из списка ['A', 'B', 'C', 'D', 'E', 'F'] нужно удалить элементы B, C и D. Вот как это делается с помощью del .

 
 
my_list2 = ['A', 'B', 'C', 'D', 'E', 'F'] print("Список", my_list2) del my_list2[1:4] print("С использованием del", my_list2)
Список ['A', 'B', 'C', 'D', 'E', 'F'] С использованием del ['A', 'E', 'F']

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

Для удаления элемента по индексу используйте pop() . Для этого также подойдет ключевое слово del .

 
 
# Использование del для удаления нескольких элементов из списка my_list1 = ['A', 'B', 'C', 'D', 'E', 'F'] print("Список", my_list1) element = my_list1.pop(2) print("Используя pop", my_list1) # Использование del для удаления нескольких элементов из списка my_list2 = ['A', 'B', 'C', 'D', 'E', 'F'] del my_list2[2] print("Используя del", my_list2)
Список ['A', 'B', 'C', 'D', 'E', 'F'] Используя pop ['A', 'B', 'D', 'E', 'F'] Используя del ['A', 'B', 'D', 'E', 'F']

Выводы

В Python есть много способов удаления данных из списка. Это методы remove() , pop() , clear() и ключевое слово del .

  • remove() — удаляет первый встреченный элемент в списке, который соответствует условию.
  • pop() — удаляет элемент по индексу.
  • clear() — удаляет все элементы списка.

Обучение с трудоустройством

Я создал этот блог в 2018 году, чтобы распространять полезные учебные материалы, документации и уроки на русском. На сайте опубликовано множество статей по основам python и библиотекам, уроков для начинающих и примеров написания программ.

Python Q CEO Pythonru admin@pythonru.com https://secure.gravatar.com/avatar/b16f253879f7349f64830c64d1da4415?s=96&d=mm&r=g CEO Pythonru Python Александр Редактор https://t.me/cashncarryhttps://pythonru.com/https://yandex.ru/q/profile/cashnc/ PythonRu.com admin@pythonru.com Alex Zabrodin 2018-10-26 Online Python, Programming, HTML, CSS, JavaScript

Источник

Различия между del, remove и pop в списках Python

Часто возникает ситуация, когда в процессе работы с программой необходимо удалить какой-либо элемент из списка. В языке программирования Python для этого предусмотрено несколько способов, включая использование методов del , remove и pop . Рассмотрим их подробнее.

Пример списка:

del

Оператор del используется для удаления элемента из списка по его индексу.

Пример использования del:

Результат выполнения этого кода будет следующим: ['яблоко', 'апельсин'] . Был удален элемент с индексом 1 — ‘банан’.

remove

Метод remove удаляет элемент из списка по его значению.

Пример использования remove:

Результат выполнения этого кода будет также: ['яблоко', 'апельсин'] . Удален ‘банан’. Однако этот метод будет выдавать ошибку, если такого элемента нет в списке.

pop

Метод pop , как и del , удаляет элемент из списка по его индексу, но в отличие от del возвращает удаленный элемент.

Пример использования pop:

popped_element = a.pop(1) print(a) print(popped_element)

Результат выполнения этого кода:

‘банан’ был удален из списка, а также сохранен в переменную popped_element .

Таким образом, методы del , remove и pop позволяют удалять элементы из списка, но делают это немного по-разному. Выбор конкретного метода зависит от конкретной задачи и требуемого поведения программы.

Источник

Оцените статью