Python Sets
In Python, a set is a built-in data structure that represents an unordered collection of unique elements. Sets are defined using curly braces ({}
) or the set()
constructor function. Elements in a set are separated by commas.
Here’s an example of a set in Python:
fruits = {'apple', 'banana', 'orange', 'kiwi'}
In this example, the variable fruits
refers to a set that contains four unique elements: 'apple'
, 'banana'
, 'orange'
, and 'kiwi'
. Note that the order of elements in a set is not guaranteed.
Sets provide several operations and methods for performing set operations, such as union, intersection, difference, and more. Let’s explore some of the commonly used operations and methods with sets:
Adding Elements:
- Elements can be added to a set using the
add()
method. For example,fruits.add('mango')
adds'mango'
to thefruits
set.
- Elements can be added to a set using the
Removing Elements:
- Elements can be removed from a set using methods like
remove()
(removes a specific element) ordiscard()
(removes an element if it exists, without raising an error if the element is not present). - The
pop()
method removes and returns an arbitrary element from the set.
- Elements can be removed from a set using methods like
Set Operations:
- Union: The
union()
method or the|
operator returns a new set that contains all unique elements from both sets. - Intersection: The
intersection()
method or the&
operator returns a new set that contains common elements between two sets. - Difference: The
difference()
method or the-
operator returns a new set that contains elements present in the first set but not in the second set. - Symmetric Difference: The
symmetric_difference()
method or the^
operator returns a new set that contains elements present in either set, but not both.
- Union: The
Set Membership:
- You can check if an element is present in a set using the
in
keyword. For example,'banana' in fruits
returnsTrue
.
- You can check if an element is present in a set using the
Set Size:
- The
len()
function returns the number of elements in a set. For example,len(fruits)
returns4
in the above example.
- The
Sets are useful when you need to work with a collection of unique elements and perform operations like deduplication, membership testing, or finding common elements between sets.
It’s important to note that sets do not preserve the order of elements, and elements in a set must be immutable (e.g., numbers, strings, tuples). Mutable objects like lists cannot be elements of a set.
my_set = {1, 2, [3, 4]}
# This will raise an error since lists are mutable
If you need an ordered collection of elements that allows duplicates, you can use the list
data structure instead.
I hope this gives you a good understanding of sets in Python. If you have any more specific questions, feel free to ask!