Difference Between remove del and pop in Python List

Difference Between remove del and pop in Python List

We all know, Python list is a very important data type. We use it very frequently in our code and perform various operations on the Python list, like adding elements, updating elements and deleting elements from the Python list.

In this tutorial, we are going to cover the following points in detail.

  • 3 methods to remove an element from the list
  • What is the difference between these three methods?
  • Which one you should use?

I have also explained these points in our CSEstack YouTube Channel. (Don’t forget to subscribe our YouTube channel.)

It does not matter how many lines of code you write every day. When you want to remove or delete any elements from the Python list, you do think- What is the difference between remove, del and pop in Python List and which one to use?

Let’s see,

How to delete or remove the element from the list?

There are 3 different ways of removing or deleting elements from the list.

Let us check one by one.

1. remove()

Yes, remove() removes the first matching value/object. It does not do anything with the indexing.

myList = [1, 2, 3, 2] 
print(myList) #[1, 3, 2]

If you want to remove all the occurrences of an element in the list, you need to loop over all elements. Check the element and remove it if it is present.

2. del list[]

del removes the item at a specific index.

myList = [3, 2, 2, 1] 
del myList[1] 
print(myList) #[3, 2, 1]

Note: You can also delete the entire list using del keyword.

3. pop()

And pop removes the item at a specific index and returns it.

myList = [4, 3, 5] 
print(myList) #[4, 5]

Difference Between remove, del and pop in Python list

  • remove() delete the matching element/object whereas del and pop removes the element at a specific index.
  •  del and pop deals with the index. The only difference between the two is that- pop return deleted the value from the list and del does not return anything.
  • Pop is the only way that returns the object.
  • Remove is the only one that searches objects (not index).

Which is the best way to delete the element in the List?

  • If you want to delete a specific object in the list, use remove method.
  • If you want to delete the object at a specific location (index) in the list, you can either use del or pop.
  • Use the pop, if you want to delete and get the object at the specific location.



How to remove an element from the Python list by Index?

To remove an element from the Python list by index, use the keyword del or pop() method.

What is the difference between pop() and remove()

– The pop() uses the index to remove the element. To remove an element from the list using remove(), you have to provide the element itself.
– Unlike remove(), pop() method return element which is removed from the Python list.
– Check the code explained above as an example.

These are the main differences between pop() and remove().

Program for Practice:

Hope this clears your doubt.  Onwards, I am sure you will use the appropriate method to remove or delete the object from the Python list.

Write a comment if you have any points to discuss.

Happy Pythoning!


  1. This is a very clear and precise discussion. I remember when I attended an interview I was asked for the difference between pip() and remove(). Thanks, Aniruddha.

  2. Also, del can be used to delete the entire list whereas pop can only be used to delete element at a specific index.

  3. ok alright, but I have a question in mind that what can/will do we with the object returns after removing the element in a list using pop() method?

Leave a Reply

Your email address will not be published. Required fields are marked *