# Python | Intersection of two lists

The intersection of two lists means that we need to take all those elements that are common to both initial lists and store them in another list. Now in Python there are various ways in which we can perform list intersection.
Examples:

` Input: lst1 = [15, 9, 10, 56, 23, 78, 5, 4, 9] lst2 = [9, 4, 5, 36, 47, 26 , 10, 45, 87] Output: [9, 10, 4, 5] Input: lst1 = [4, 9, 1, 17, 11, 26, 28, 54, 69] lst2 = [9, 9, 74, 21, 45, 11, 63, 28, 26] Output: [9, 11, 26, 28] `

Method 1:
This is the simplest method, where we haven’t used any built-in functionality.

 ` # Python program to illustrate intersection ` ` # of two lists in the simplest way ` ` def ` ` intersection (lst1, lst2): ` ` lst3 ` ` = ` ` [value ` ` for ` ` value ` ` in ` ` lst1 ` ` if ` ` value ` ` in ` ` lst2] ` ` return ` ` lst3 `   ` Driver code ` ` lst1 ` ` = ` ` [` ` 4 ` `, ` ` 9 ` `, ` ` 1 ` `, ` ` 17 ` `, ` ` 11 ` `, ` ` 26 ` `, ` ` 28 ` `, ` ` 54 ` `, ` ` 69 ` `] ` ` lst2 ` = ` [` ` 9 ` `, ` ` 9 ` `, ` ` 74 ` `, ` ` 21 ` `, ` ` 45 ` ` , ` ` 11 ` `, ` ` 63 ` `, ` ` 28 ` `, ` ` 26 ` `] ` ` print ` ` (intersection (lst1, lst2)) `

Output:

` [9, 11, 26, 28 ] `

Method 2:
This method involves using the set () method.

 ` # Prog Python frame to illustrate intersection ` ` # of two lists using the set () method ` ` def ` ` intersection (lst1, lst2): ` ` return ` ` list ` ` (` ` set ` ` (lst1) & amp; ` ` set ` ` (lst2)) `   ` Driver code ` ` lst1 ` ` = ` ` [` ` 15 ` `, ` ` 9 ` `, ` ` 10 ` `, ` ` 56 ` `, ` ` 23 ` `, ` ` 78 ` `, ` ` 5 ` `, ` ` 4 ` `, ` ` 9 ` `] ` ` lst2 ` ` = ` ` [` ` 9 ` `, ` ` 4 ` `, ` ` 5 ` `, ` ` 36 ` `, ` ` 47 ` `, ` ` 26 ` `, ` ` 10 ` `, ` ` 45 ` `, ` ` 87 ` `] ` ` print ` ` (intersection (lst1, lst2)) `

Output:

` [9, 10, 4, 5] `

Method 3:
In this method, we set () the larger list, and then use the built-in interscetion () function to calculate the overlapping list.  Intersection () is the first class part of the set.

 ` # Python program to illustrate intersection ` ` # from two lists using set () and intersection () ` ` def ` ` Intersection (lst1, lst2): ` ` return ` ` set ` ` (lst1) .intersection (lst2) ` ` `  ` Driver code ` ` lst1 ` ` = ` ` [` ` 4 ` `, ` ` 9 ` `, ` ` 1 ` `, ` ` 17 ` `, ` ` 11 ` `, ` ` 26 ` `, ` ` 28 ` `, ` ` 28 ` `, ` ` 26 ` `, ` ` 66 ` `, ` ` 91 ` `] ` ` lst2 ` ` = ` ` [` ` 9 ` `, ` ` 9 ` `, ` ` 74 ` `, ` ` 21 ` `, ` ` 45 ` `, ` ` 11 ` `, ` ` 63 ` `] ` ` print ` ` (Intersection (lst1, lst2)) `

Exit :

` {9, 11} `

Method 4:
When using this hybrid method , the program’s complexity drops to O (n). This is an efficient way to do the following program.

 ` # Python program to illustrate intersection ` ` # of two lists ` ` def ` ` intersection (lst1, lst2): `   ` # Using a hybrid method ` ` temp ` ` = ` ` set ` ` (lst2) ` ` lst3 ` ` = ` ` [value ` ` for ` ` value ` ` in ` ` lst1 ` ` if ` ` value ` ` in ` ` temp] ` ` return ` ` lst3 `   ` Driver code ` ` lst1 ` ` = ` ` [` ` 9 ` `, ` ` 9 ` `, ` ` 74 ` `, ` ` 21 ` `, ` ` 45 ` `, ` ` 11 ` `, ` ` 63 ` `] ` ` lst2 ` ` = ` ` [` ` 4 ` `, ` ` 9 ` `, ` ` 1 ` `, ` ` 17 ` `, ` ` 11 ` `, ` ` 26 ` `, ` ` 28 ` `, ` ` 28 ` `, ` ` 26 ` `, ` ` 66 ` `, ` ` 91 ` ` ] ` ` print ` ` (intersection (lst1, lst2)) `

Output:

` [9, 9, 11] `

Method 5:
This is where intersection occurs over sublists within other lists. Here we have used the concept of filter ().

 ` # Python program to illustrate intersection ` ` # from two lists, sublists and using the filter () ` ` def ` ` intersection ( lst1, lst2): ` ` lst3 ` ` = ` ` [` ` list ` ` (` ` filter ` ` (` ` lambda ` ` x: x ` ` in ` ` lst1, sublist)) ` ` for ` ` sublist ` ` in ` ` lst2] ` ` ` ` return ` ` lst3 ` ` `  ` Driver code ` ` lst1 ` ` = ` ` [` ` 1 ` `, ` ` 6 ` `, ` ` 7 ` `, ` ` 10 ` `, ` ` 13 ` `, ` ` 28 ` `, ` ` 32 ` `, ` ` 41 ` `, ` ` 58 ` `, ` ` 63 ` `] ` ` lst2 ` ` = ` ` [[` ` 13 ` `, ` ` 17 ` `, ` ` 18 ` `, ` ` 21 ` `, ` ` 32 ` `], [` ` 7 ` `, ` ` 11 ` `, ` ` 13 ` `, ` ` 14 ` `, ` ` 28 ` `], [` ` 1 ` `, ` ` 5 ` `, ` ` 6 ` `, ` ` 8 ` `, ` ` 15 ` `, ` ` 16 ` `]] ` ` print ` ` (intersection (lst1, lst2)) `

Work: The filter part takes an item from each sublist and checks if it is in the original list. List comprehension is performed for each sublist in list2.
Output:

` [[13, 32], [7, 13, 28], [1, 6]] `

## Shop Learn programming in R: courses

\$ Best Python online courses for 2022

\$ Best laptop for Fortnite

\$ Best laptop for Excel

\$ Best laptop for Solidworks

\$ Best laptop for Roblox

\$ Best computer for crypto mining

\$ Best laptop for Sims 4

\$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

NUMPYNUMPY

How to convert Nonetype to int or string?

NUMPYNUMPY

How to specify multiple return types using type-hints

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

## Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method