Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Tut] How to Intersect Multiple Sets in Python?
1
How to Intersect Multiple Sets in Python?

To intersect multiple sets, stored in a list
Code:
l
, use the Python one-liner
Code:
l.pop().intersection(*l)
that takes the first set from the list, calls the
Code:
intersection()
method on it, and passes the remaining sets as arguments by unpacking them from the list.


A set is a unique collection of unordered elements. The intersection operation creates a new set that consists of the elements that exist in all sets.

[Image: intersect-1024x576.jpg]

So, let’s dive into the formal problem formulation, shall we?

Problem: Given a list or a collection of sets. How to jointhose sets using the intersection operation?

Example: You’ve got a list of sets
Code:
[{1, 2, 3}, {1, 4}, {2, 3, 5}]
and you want to calculate the intersection
Code:
{1}
.

Solution: To intersect a list of sets, use the following strategy:
  • Get the first element from the list as a starting point. This assumes the list has at least one element.

  • Call the
    Code:
    intersection()
    method on the first set object.

  • Pass all sets as arguments into the
    Code:
    intersection()
    method by unpacking the list with the asterisk operator
    Code:
    *list
    .

  • The result of the
    Code:
    intersection()
    method is a new set containing all elements that are in all of the sets.

Code: Here’s the one-liner codethat intersects a collection of sets.

Code:
# Create the list of sets lst = [{1, 2, 3}, {1, 4}, {1, 2, 3}] # One-Liner to intersect a list of sets print(lst[0].intersection(*lst))

The output of this code is the intersection of the three sets
Code:
{1, 2, 3}
,
Code:
{1, 4}
, and
Code:
{2, 3, 5}
. Only one element appears in all three sets:

Code:
{1}

If you love Python one-liners, check out my new book “Python One-Liners” (Amazon Link) that teaches you a thorough understanding of all single lines of Python code.

Try it yourself: Here’s the code in an interactive code shell that runs it in your browser:

https://trinket.io/embed/python/5eb34b02c7

Exercise: Change the code to calculate the union of the sets in the list!

Related video: A similar problem is to perform the union operation on a list of sets. In the following video, you can watch me explain how to union multiple sets in Python:



Where to Go From Here?

Enough theory, let’s get some practice!

To become successful in coding, you need to get out there and solve real problems for real people. That’s how you can become a six-figure earner easily. And that’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?

Practice projects is how you sharpen your saw in coding!

Do you want to become a code master by focusing on practical code projects that actually earn you money and solve problems for people?

Then become a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

Join my free webinar “How to Build Your High-Income Skill Python” and watch how I grew my coding business online and how you can, too—from the comfort of your own home.

Join the free webinar now!
Reply

Users browsing this thread:
1 Guest(s)


Forum Jump: