Write a Python Program to Find the difference between two Lists. In this example, we converted the list to sets, found the set differences, and then converted it back to the list.
list1 = [1, 2, 4, 6, 8, 9] list2 = [1, 3, 5, 7, 11, 9] print("First List Items = ", list1) print("Second List Items = ", list2) diff1 = list(set(list1) - set(list2)) diff2 = list(set(list2) - set(list1)) actualdiff = diff1 + diff2 print("List Difference Result = ", actualdiff)
Python Program to Find List Difference
This program allows entering the list items for both lists and then returns the list differences using sets.
list1 = [] listNumber = int(input("Enter the Total List Items = ")) for i in range(1, listNumber + 1): listValue = int(input("Enter the %d List Item = " %i)) list1.append(listValue) list2 = [] listNumber = int(input("Enter the Total List Items = ")) for i in range(1, listNumber + 1): listValue = int(input("Enter the %d List Item = " %i)) list2.append(listValue) print("First List Items = ", list1) print("Second List Items = ", list2) actualdiff = list(list(set(list1) - set(list2)) + list(set(list2) - set(list1))) print("List Difference Result = ", actualdiff)
Output
Enter the Total List Items = 3
Enter the 1 List Item = 1
Enter the 2 List Item = 2
Enter the 3 List Item = 3
Enter the Total List Items = 4
Enter the 1 List Item = 4
Enter the 2 List Item = 5
Enter the 3 List Item = 2
Enter the 4 List Item = 1
First List Items = [1, 2, 3]
Second List Items = [4, 5, 2, 1]
List Difference Result = [3, 4, 5]
We used the for loop and if statement in this program to check the difference between the two lists. The for loop (for val in list1 + list2) iterate all the values in list1 and list2.
The if statement and not in operator (if val not in list1 or val not in list2) checks whether the item doesn’t present in either list1 or list2. If True, append or add that item to the list difference.
list1 = [1, 2, 6, 8, 11, 14] list2 = [2, 3, 11, 9, 7, 14, 22] print("First List Items = ", list1) print("Second List Items = ", list2) listDifference = [] for val in list1 + list2: if val not in list1 or val not in list2: listDifference.append(val) print("List Difference Result = ", listDifference)
First List Items = [1, 2, 6, 8, 11, 14]
Second List Items = [2, 3, 11, 9, 7, 14, 22]
List Difference Result = [1, 6, 8, 3, 9, 7, 22]
This program uses list comprehension to check the difference between the two given lists.
list1 = [3, 4, 6, 7, 8, 11, 22] list2 = [1, 3, 5, 11, 8, 9, 16, 44] print("First List Items = ", list1) print("Second List Items = ", list2) listdiff = [x for x in list1 + list2 if x not in list1 or x not in list2] print("List Difference Result = ", listdiff)
First List Items = [3, 4, 6, 7, 8, 11, 22]
Second List Items = [1, 3, 5, 11, 8, 9, 16, 44]
List Difference Result = [4, 6, 7, 22, 1, 5, 9, 16, 44]