Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Remove common elements from two list in Python

  • Difficulty Level : Medium
  • Last Updated : 19 Dec, 2021

Given two lists, the task is to write a Python program to remove all the common elements of two lists. 

Examples:

Input : list1 = [1, 2, 3, 4, 5]  

          list2 = [4, 5, 6, 7, 8,]

Output : list1 = [1, 2, 3]  

              list2 = [6, 7, 8]

Explanation: Lists after removing common elements of  both the lists i.e, 4 and 5.

Input : list1 = [1, 2, 3]  

           list2 = [1, 2, 3]

Output :  list1 = []  

               list2 = []

Explanation: They have all the elemen

n common in 

between them.

Method 1: Using Remove() Method

The remove() method removes the first matching element (which is passed as an argument) from the list.

Python3




# Python program to remove common elements
# in the two lists using remove method
def remove_common(a, b):
  
    for i in a[:]:
        if i in b:
            a.remove(i)
            b.remove(i)
  
    print("list1 : ", a)
    print("list2 : ", b)
  
if __name__ == "__main__":
  
    a = [1, 2, 3, 4, 5]
    b = [4, 5, 6, 7, 8]
  
    remove_common(a, b)

Output:

list1 :  [1, 2, 3]
list2 :  [6, 7, 8]

Method 2: Using List Comprehension

List comprehension gives a shorter syntax when you want to create a new list based on the elements of the existing list.

Python3




# Python program to remove common elements
# in the two lists using list comprehension
def remove_common(a, b):
  
    a, b = [i for i in a if i not in b], 
    [j for j in b if j not in a]
  
    print("list1 : ", a)
    print("list2 : ", b)
  
if __name__ == "__main__":
  
    a = [1, 2, 3, 4, 5]
    b = [4, 5, 6, 7, 8]
  
    remove_common(a, b)

Output:

list1 :  [1, 2, 3]
list2 :  [6, 7, 8]

Method 3: Using Set’s difference operator

The difference operator – gets items in the first set but not in the second.

Python3




# Python program to remove common elements
# in the two lists using Set’s difference
# operator
def remove_common(a, b):
  
    a, b = list(set(a) - set(b)), 
    list(set(b) - set(a))
  
    print("list1 : ", a)
    print("list2 : ", b)
  
  
if __name__ == "__main__":
  
    a = [1, 2, 3, 4, 5]
    b = [4, 5, 6, 7, 8]
  
    remove_common(a, b)

Output:

list1 :  [1, 2, 3]
list2 :  [6, 7, 8]

Method 4: Using Python Set difference() Method

The difference() method in python returns a set that contains the difference between two sets i.e, the returned set contains items that exist only in the first set and excludes elements present in both sets.

Python3




# Python program to remove common elements
# in the two lists using Set difference()
# method
def remove_common(a, b):
  
    a, b = list(set(a).difference(b)), list(set(b).difference(a))
  
    print("list1 : ", a)
    print("list2 : ", b)
  
if __name__ == "__main__":
  
    a = [1, 2, 3, 4, 5]
    b = [4, 5, 6, 7, 8]
  
    remove_common(a, b)

Output:

list1 :  [1, 2, 3]
list2 :  [6, 7, 8]

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!