Bird
Raised Fist0
Pythonprogramming~3 mins

Why Union and intersection in Python? - Purpose & Use Cases

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
The Big Idea

Discover how a simple trick can save you hours of tedious checking!

The Scenario

Imagine you have two lists of friends from different groups, and you want to find who is in either group or who is in both groups. Doing this by checking each name one by one is tiring and confusing.

The Problem

Manually comparing each friend from one list to another takes a lot of time and can easily lead to mistakes, like missing someone or counting the same person twice.

The Solution

Using union and intersection lets you quickly combine or find common items between groups with simple commands, saving time and avoiding errors.

Before vs After
โœ— Before
result = []
for friend in list1:
    if friend not in result:
        result.append(friend)
for friend in list2:
    if friend not in result:
        result.append(friend)
โœ“ After
result = set(list1) | set(list2)  # union
common = set(list1) & set(list2)  # intersection
What It Enables

It makes combining and comparing groups easy and fast, even with large amounts of data.

Real Life Example

Finding all unique email addresses from two mailing lists (union) or identifying subscribers who are on both lists (intersection).

Key Takeaways

Manual comparison is slow and error-prone.

Union and intersection simplify combining and finding common items.

They help handle data quickly and accurately.

Practice

(1/5)
1. What does the union operation do when applied to two sets in Python?
easy
A. Combines all unique elements from both sets
B. Finds elements only in the first set
C. Finds elements only in the second set
D. Finds elements common to both sets

Solution

  1. Step 1: Understand union operation

    The union of two sets includes every unique element from both sets without duplicates.
  2. Step 2: Compare with other options

    Options B and C describe subsets, and D describes intersection, not union.
  3. Final Answer:

    Combines all unique elements from both sets -> Option A
  4. Quick Check:

    Union = all unique elements combined [OK]
Hint: Union joins all unique items from both sets [OK]
Common Mistakes:
  • Confusing union with intersection
  • Thinking union only takes elements from one set
  • Assuming union keeps duplicates
2. Which of the following is the correct syntax to find the intersection of two sets a and b in Python?
easy
A. a + b
B. a | b
C. a & b
D. a - b

Solution

  1. Step 1: Recall intersection syntax

    In Python, the intersection of two sets is found using the & operator or the .intersection() method.
  2. Step 2: Check other operators

    | is union, + is invalid for sets, - is difference.
  3. Final Answer:

    a & b -> Option C
  4. Quick Check:

    Intersection uses & operator [OK]
Hint: Use & for intersection of sets [OK]
Common Mistakes:
  • Using | instead of & for intersection
  • Trying to add sets with + operator
  • Confusing difference (-) with intersection
3. What is the output of the following code?
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
print(set1.intersection(set2))
medium
A. {1, 2}
B. {5, 6}
C. {1, 2, 3, 4, 5, 6}
D. {3, 4}

Solution

  1. Step 1: Identify intersection elements

    The intersection contains elements present in both sets: {3, 4}.
  2. Step 2: Confirm output

    Printing the intersection returns {3, 4} exactly.
  3. Final Answer:

    {3, 4} -> Option D
  4. Quick Check:

    Common elements = {3, 4} [OK]
Hint: Intersection shows only common elements [OK]
Common Mistakes:
  • Confusing union with intersection output
  • Expecting all elements combined
  • Mixing up set contents
4. The following code is intended to print the union of two sets, but it causes an error. What is the problem?
set1 = {1, 2, 3}
set2 = {3, 4, 5}
print(set1 + set2)
medium
A. Sets cannot be added with + operator
B. The sets are empty
C. The print statement is missing parentheses
D. The sets have overlapping elements

Solution

  1. Step 1: Identify the error cause

    Python sets do not support the + operator; this causes a TypeError.
  2. Step 2: Correct way to union sets

    Use | operator or .union() method to combine sets.
  3. Final Answer:

    Sets cannot be added with + operator -> Option A
  4. Quick Check:

    + operator invalid for sets [OK]
Hint: Use | or .union(), not + for sets [OK]
Common Mistakes:
  • Trying to add sets with +
  • Ignoring error message
  • Confusing list addition with set union
5. Given two lists of student names, list1 = ['Anna', 'Bob', 'Cara'] and list2 = ['Bob', 'Diana', 'Anna'], which Python code correctly finds students present in both lists using set operations?
hard
A. list1 | list2
B. set(list1) & set(list2)
C. set(list1) + set(list2)
D. list1.intersection(list2)

Solution

  1. Step 1: Convert lists to sets for set operations

    Lists must be converted to sets to use intersection (&) operator.
  2. Step 2: Use & operator to find common elements

    set(list1) & set(list2) returns elements in both sets.
  3. Step 3: Check other options

    list1 | list2 uses | on lists (invalid), C uses + on sets (invalid), D calls intersection on list (no such method).
  4. Final Answer:

    set(list1) & set(list2) -> Option B
  5. Quick Check:

    Convert lists to sets, then & for intersection [OK]
Hint: Convert lists to sets before intersection [OK]
Common Mistakes:
  • Using + or | on lists directly
  • Calling set methods on lists
  • Not converting lists to sets first