# Python – Check if one list is subset of other

## Python | Check if one list is subset of other

Sometimes we encounter the problem of checking if one list is just an extension of the list i.e just a superset of one list. This kind of problems are quite popular in competitive programming. Having shorthands for it helps the cause. Lets discuss various ways to achieve this particular task.

Method #1 : Using all()
all() is used to check all the elements of a container in just one line. Checks for all the elements of one list for existence in other list.

 `# Python3 code to demonstrate` `# to check if list is subset of other` `# using all()` `# initializing list` `test_list ``=` `[``9``, ``4``, ``5``, ``8``, ``10``]` `sub_list ``=` `[``10``, ``5``, ``4``]` `# printing original lists` `print` `(``"Original list : "` `+` `str``(test_list))` `print` `(``"Original sub list : "` `+` `str``(sub_list))` `# using all() to` `# check subset of list` `flag ``=` `0` `if``(``all``(x ``in` `test_list ``for` `x ``in` `sub_list)):` `    ``flag ``=` `1` `    ` `# printing result` `if` `(flag) :` `    ``print` `(``"Yes, list is subset of other."``)` `else` `:` `    ``print` `(``"No, list is not subset of other."``)`

Output :

```Original list : [9, 4, 5, 8, 10]
Original sub list : [10, 5, 4]
Yes, list is subset of other.```

Method #2 : Using set.issubset()
The most used and recommended method to check for a sublist. This function is tailor made to perform the particular task of checking if one list is a subset of another.

 `# Python3 code to demonstrate` `# to check if list is subset of other` `# using issubset()` `# initializing list` `test_list ``=` `[``9``, ``4``, ``5``, ``8``, ``10``]` `sub_list ``=` `[``10``, ``5``]` `# printing original lists` `print` `(``"Original list : "` `+` `str``(test_list))` `print` `(``"Original sub list : "` `+` `str``(sub_list))` `# using issubset() to` `# check subset of list` `flag ``=` `0` `if``(``set``(sub_list).issubset(``set``(test_list))):` `    ``flag ``=` `1` `    ` `# printing result` `if` `(flag) :` `    ``print` `(``"Yes, list is subset of other."``)` `else` `:` `    ``print` `(``"No, list is not subset of other."``)`

Output :

```Original list : [9, 4, 5, 8, 10]
Original sub list : [10, 5]
Yes, list is subset of other.```

Method #3 : Using set.intersection()
Yet another method dealing with sets, this method checks if the intersection of both the lists ends up to be the sub list we are checking. This confirms that one list is a subset of the other.

 `# Python3 code to demonstrate` `# to check if list is subset of other` `# using intersection()` `# initializing list` `test_list ``=` `[``9``, ``4``, ``5``, ``8``, ``10``]` `sub_list ``=` `[``10``, ``5``]` `# printing original lists` `print` `(``"Original list : "` `+` `str``(test_list))` `print` `(``"Original sub list : "` `+` `str``(sub_list))` `# using intersection() to` `# check subset of list` `flag ``=` `0` `if``((``set``(sub_list) & ``set``(test_list))``=``=` `set``(sub_list)):` `    ``flag ``=` `1` `    ` `# printing result` `if` `(flag) :` `    ``print` `(``"Yes, list is subset of other."``)` `else` `:` `    ``print` `(``"No, list is not subset of other."``)`

Output :

```Original list : [9, 4, 5, 8, 10]
Original sub list : [10, 5]
Yes, list is subset of other.```

Method #4 : Using iteration and counter
Using count of element in both lists to check whether the second list is a subset of the first list.

 `# Python3 code to demonstrate` `# to check if list is subset of other` `#Importing` `from` `collections ``import` `Counter` `def` `checkInFirst(a, b):` `     ``#getting count` `    ``count_a ``=` `Counter(a)` `    ``count_b ``=` `Counter(b)` `    ``#checking if element exists in second list` `    ``for` `key ``in` `count_b:` `        ``if` `key ``not` `in`  `count_a:` `            ``return` `False` `        ``if` `count_b[key] > count_b[key]:` `            ``return` `False` `    ``return` `True` `# initializing list` `a ``=` `[``1``, ``2``,``4``,``5``]` `b ``=` `[``1``, ``2``,``3``]` `#Calling function` `res ``=` `checkInFirst(a, b)` `#Printing list` `print` `(``"Original list : "` `+` `str``(a))` `print` `(``"Original sub list : "` `+` `str``(b))` `if` `res``=``=``True` `:` `    ``print` `(``"Yes, list is subset of other."``)` `else` `:` `    ``print` `(``"No, list is not subset of other."``)` `    ` `#Added by Paras Jain(everythingispossible)`

Output :

```Original list : [1, 2, 4, 5]
Original sub list : [1, 2, 3]
No, list is not subset of other.```

Method #5 : Using set index

 `# Python3 code to demonstrate` `# to check if list is subset of other` `# initializing list` `one ``=` `[``1``,``2``,``3``,``4``,``5``]` `two ``=` `[``1``,``2``]` `#using set to find if element exists in another list` `result ``=` `set``(x ``in` `one ``for` `x ``in` `two)` `flag ``=` `0` `for` `ans ``in` `result:` `    ``if` `ans ``=``=` `False``:` `        ``flag``=``1` `#Printing list` `print` `(``"Original list : "` `+` `str``(one))` `print` `(``"Original sub list : "` `+` `str``(two))` `if` `flag``=``=``0``:` `    ``print``(``"Yes, list is subset of other."``)` `else``:` `    ``print``(``"No, list is not subset of other."``)` `#Added by Paras Jain(everythingispossible)`

Output :

```Original list : [1, 2, 3, 4, 5]
Original sub list : [1, 2]
Yes, list is subset of other.```

Last Updated on November 13, 2021 by admin

## Bisect Algorithm Functions in PythonBisect Algorithm Functions in Python

Bisect Algorithm Functions in Python The purpose of Bisect algorithm is to find a position

## Python OpenCV – cv2.putText() methodPython OpenCV – cv2.putText() method

Python OpenCV | cv2.putText() method OpenCV-Python is a library of Python bindings designed to solve computer

Reading images in Python Python supports very powerful tools when comes to image processing. Let’s

## Python | Pandas Dataframe.sort_values()Python | Pandas Dataframe.sort_values()

Pandas Dataframe.sort_values()   Pandas sort_values() function sorts a data frame in Ascending or Descending order

## Python – Count occurrences of an element in a listPython – Count occurrences of an element in a list

Python | Count occurrences of an element in a list   Given a list in

## Pandas dataframe groupby()Pandas dataframe groupby()

Python – Pandas dataframe groupby()   Pandas groupby is used for grouping the data according

## Python – os.path.splitext() methodPython – os.path.splitext() method

Python | os.path.splitext() method OS module in Python provides functions for interacting with the operating system.

## Python – os.mkdir() methodPython – os.mkdir() method

Python | os.mkdir() method OS module in Python provides functions for interacting with the operating system.