Python | Check if two lists have at-least one element common

• Last Updated : 21 Nov, 2018

Given two lists a, b. Check if two lists have at least one element common in them.

Examples:

Input : a = [1, 2, 3, 4, 5]
b = [5, 6, 7, 8, 9]
Output : True

Input : a=[1, 2, 3, 4, 5]
b=[6, 7, 8, 9]
Output : False

Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Method 1 : Traversal of List

Using traversal in two lists, we can check if there exists one common element at least in them. While traversing two lists if we find one element to be common in them, then we return true. After complete traversal and checking, if no elements are same, then we return false.

 # Python program to check # if two lists have at-least # one element common# using traversal of list  def common_data(list1, list2):    result = False      # traverse in the 1st list    for x in list1:          # traverse in the 2nd list        for y in list2:                # if one common            if x == y:                result = True                return result                       return result      # driver codea = [1, 2, 3, 4, 5]b = [5, 6, 7, 8, 9]print(common_data(a, b))  a = [1, 2, 3, 4, 5]b = [6, 7, 8, 9]print(common_data(a, b))

Output:

True
False

Method 2 : Using Set and Property

Using set’s and property, if there exists at least one common element then set(a)&set(b) returns a positive integer, if it does not contains any positive integer, then it returns 0. So we insert a in set_a and b in set_b and then check if set_a & set_b for a positive integer or not.

 # Python program to check # if two lists have at-least # one element common# using set and property  def common_member(a, b):    a_set = set(a)    b_set = set(b)    if (a_set & b_set):        return True     else:        return False            a = [1, 2, 3, 4, 5]b = [5, 6, 7, 8, 9]print(common_member(a, b))  a =[1, 2, 3, 4, 5]b =[6, 7, 8, 9]print(common_member(a, b))

Output:

True
False

Method 3 : Using Set Intersection

Using set’s intersection inbuilt function. a_set.intersection(b_set) returns a positive integer if there is at least one element in common, else it returns 0. So we insert a in set_a and b in set_b and then check a_set.intersection(b_set), and returns depending on the value.

 # Python program to check # if two lists have at-least # one element common# using set intersection  def common_member(a, b):    a_set = set(a)    b_set = set(b)    if len(a_set.intersection(b_set)) > 0:        return(True)     return(False)     a = [1, 2, 3, 4, 5]b = [5, 6, 7, 8, 9]print(common_member(a, b))  a =[1, 2, 3, 4, 5]b =[6, 7, 8, 9]print(common_member(a, b))

Output:

True
False

My Personal Notes arrow_drop_up