Table of Contents
ToggleIntroduction
A set in Python is an unordered collection of unique elements. Sets are mutable, meaning that you can add or remove elements from them. Set in python are enclosed in curly braces `{}`, similar to dictionaries, but they contain only elements without key-value pairs.
Example:
“`python
# Creating a set
my_set = {1, 2, 3, 4, 5}
“`
You can also read about : Python Dictionary
Key Characteristics
1. Mutable: Sets can be modified after creation. You can add or remove elements from a set.
2. Unordered: Set in python are unordered collections, meaning that the order of elements is not guaranteed.
3. Unique Elements: Sets contain only unique elements. Duplicate elements are automatically removed.
4. Immutable Elements: Elements in a set in python must be immutable objects, such as numbers, strings, or tuples.
You can also read about : Difference Between List & Tuple
You can also read about : Python Data Types
Common Operations and Methods
- Adding Elements:
You can add elements to a set using the `add()` method or the `update()` method to add multiple elements.
“`python
# Adding a single element
my_set.add(6)
# Adding multiple elements
my_set.update({7, 8, 9})
“`
- Removing Elements:
To remove elements from a set, you can use the `remove()` method, the `discard()` method (which won’t raise an error if the element is not present), or the `pop()` method to remove and return an arbitrary element.
“`python
# Removing a specific element
my_set.remove(6)
# Removing an element safely
my_set.discard(7)
# Removing and returning an arbitrary element
element = my_set.pop()
“`
- Set Methods:
– union(): Returns a new set containing all unique elements from both sets.
– intersection(): Returns a new set containing common elements between two sets.
– difference(): Returns a new set containing elements that are present in the first set but not in the second set.
– symmetric_difference(): Returns a new set containing elements that are present in either set, but not in both.
- Set Operations:
- Union (`|`): Combines elements from two sets, excluding duplicates.
- Intersection (`&`): Returns elements common to both sets.
- Difference (`-`): Returns elements present in the first set but not in the second.
- Symmetric Difference (`^`): Returns elements present in either set, but not in both.
# Define two sets
set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6, 7, 8}
# Union (|)
union_set = set1 | set2
print(“Union:”, union_set) # Output: {1, 2, 3, 4, 5, 6, 7, 8}
# Intersection (&)
intersection_set = set1 & set2
print(“Intersection:”, intersection_set) # Output: {4, 5}
# Difference (-)
difference_set = set1 – set2
print(“Difference (set1 – set2):”, difference_set) # Output: {1, 2, 3}
difference_set = set2 – set1
print(“Difference (set2 – set1):”, difference_set) # Output: {6, 7, 8}
# Symmetric Difference (^)
symmetric_difference_set = set1 ^ set2
print(“Symmetric Difference:”, symmetric_difference_set) # Output: {1, 2, 3, 6, 7, 8}
Use Cases in Set in Python
- Removing Duplicates: Sets are useful for removing duplicate elements from a list or collection of data.
- Membership Testing: Check whether an element exists in a set efficiently using membership testing operations.
- Set Operations: Perform set operations such as union, intersection, and difference to analyse data relationships.
- Filtering Data: Use sets to filter out unwanted or redundant elements from datasets.
- Finding Unique Values: Quickly find unique values in a dataset by converting it to a set.
Conclusion
Set in Python provide a powerful tool for handling collections of unique elements and performing set operations efficiently. Understanding set in python methods and operations enables efficient manipulation and analysis of data in Python.
Frequently Asked Questions (FAQs)
What is set data types in Python?
A set in Python used to store multiple items in a single variable. It is one of the four built-in data types (alongside List, Dictionary, and Tuple), each with distinct characteristics and uses. Sets are defined using curly brackets, and they are both unordered and unindexed collections.
What is a set() in Python?
The `set()` method in Python converts an iterable into a collection of unique elements, known as a set. This built-in constructor function is used to create an empty set or to initialize a set with specified elements.
When to use sets in Python?
Since set in python do not allow duplicate elements, they are highly effective for removing duplicate values from a list or tuple. Additionally, sets are useful for performing common mathematical operations such as unions and intersections.
Is a set a list in Python?
The main distinction between a list and a set in python is that a list can contain duplicate values, whereas a set cannot. In Python, both lists and sets are built-in data structures used for storing and organizing values. In contrast, in Java, lists and sets are interfaces within the collection framework.
Is set data type in Python mutable?
Python includes both mutable and immutable collection data types. Strings and tuples are immutable, whereas lists, dictionaries, and sets are mutable.