Home > Article > Backend Development > Python program: Remove occurrences of all elements in an array/list
An array is a collection of elements of the same data type stored in contiguous memory locations. Python does not provide support for built-in arrays. If you need to use arrays, you need to import the "array" module, or use arrays from the numpy library.
We can use lists instead of arrays in Python. However, we cannot restrict the elements of the list to have the same data type.
The given task is to remove all occurrences of elements from an array/list. ie. We remove specified elements, including duplicate elements. Let's understand how this actually works by considering an input-output scenario.
Consider a list consisting of one or more duplicate elements (repeating elements).
my_list = [ 1, 10, 20, 10, 21, 16, 18, 10, 22, 10, 8, 10 ].
Now, let's say we need to delete element 10. We can clearly see that the element 10 appears in the list and is repeated 5 times. After removing all occurrencesThe resulting list will look like this -
my_list = [ 1, 20, 21, 16, 18, 22, 8 ].
There are various ways to remove elements from a Python list. Let’s discuss them one by one.
Use Remove() method
The remove() method in Python accepts a single value representing an element in the list as a parameter and removes it from the current list. In order to remove all occurrences of elements using this method, we need to compare the desired element with all other elements in the list and whenever a match occurs, we need to call the remove() method.
Example
In this example, we will create a list of elements and use remove() to remove all occurrences of value 10 Method.
def removing_elements(my_list, element): element_count = my_list.count(element) for i in range(element_count): my_list.remove(element) return my_list if __name__ == "__main__": my_list = [1, 10, 20, 10, 21, 16, 18, 10, 22, 10, 8, 10] element = 10 print("The list before performing the removal operation is: ") print(my_list) result = removing_elements(my_list, element) print("The list after performing the removal operation is: ") print(result)
The output of the above program is as follows -
The list before performing the removal operation is: [1, 10, 20, 10, 21, 16, 18, 10, 22, 10, 8, 10] The list after performing the removal operation is: [1, 20, 21, 16, 18, 22, 8]
The technique “List Comprehension” consists of lengthy one-line statements that can perform the entire task. Using this a new can be constructed such that the rest of the elements can be stored whenever the given base condition is satisfied.
Here, we search for the desired element and after it is found, we constructed another list such that the matched elements are excluded ie. Except for the matched elements, all other elements will be stored within the newly constructed list which is finally considered as the resulting list.
Example
Let’s see an example -
def removing_elements(my_list, element): result = [i for i in my_list if i != element] return result if __name__ == "__main__": my_list = [1, 10, 20, 10, 21, 16, 18, 10, 22, 10, 8, 10] element = 10 print("The list before performing the removal operation is: ") print(my_list) result = removing_elements(my_list, element) print("The list after performing the removal operation is: ") print(result)
The output of the above program is as follows -
The list before performing the removal operation is: [1, 10, 20, 10, 21, 16, 18, 10, 22, 10, 8, 10] The list after performing the removal operation is: [1, 20, 21, 16, 18, 22, 8]
The method filter() accepts a function and an iterable object as parameters and filters the elements of the given iterable based on the condition described by the function.
Here, using the filter() and __ne__ ( functionality of the not equal operator) methods we can filter the elements of a list that are not equal to the desired element.
Example
In this example, we use the filter() method to remove all occurrences of a specific element in the list.
def removing_elements(my_list, element): result = list(filter((element).__ne__, my_list)) return result if __name__ == "__main__": my_list = [1, 10, 20, 10, 21, 16, 18, 10, 22, 10, 8, 10] element = 10 print("The list before performing the removal operation is: ") print(my_list) result = removing_elements(my_list, element) print("The list after performing the removal operation is: ") print(result)
The output of the above program is as follows -
The list before performing the removal operation is: [1, 10, 20, 10, 21, 16, 18, 10, 22, 10, 8, 10] The list after performing the removal operation is: [1, 20, 21, 16, 18, 22, 8]
The above is the detailed content of Python program: Remove occurrences of all elements in an array/list. For more information, please follow other related articles on the PHP Chinese website!