0% found this document useful (0 votes)
199 views

Python Sets

Sets in Python can be created using the built-in set() function or by placing elements inside curly braces. Sets are unordered collections of unique elements that do not allow duplicates. Elements can be added to a set using the add() or update() methods and removed using the remove(), discard(), or pop() methods. Accessing individual elements is not possible in a set since they are unordered, but elements can be looped through or checked for membership using the in operator.

Uploaded by

dhaneesh22
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
199 views

Python Sets

Sets in Python can be created using the built-in set() function or by placing elements inside curly braces. Sets are unordered collections of unique elements that do not allow duplicates. Elements can be added to a set using the add() or update() methods and removed using the remove(), discard(), or pop() methods. Accessing individual elements is not possible in a set since they are unordered, but elements can be looped through or checked for membership using the in operator.

Uploaded by

dhaneesh22
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

8/18/2020 Python Sets - GeeksforGeeks

Python Sets
Last Updated: 20-11-2019

In Python, Set is an unordered collection of data type that is iterable, mutable and has no
duplicate elements. The order of elements in a set is unde ned though it may consist of
various elements.

The major advantage of using a set, as opposed to a list, is that it has a highly optimized
method for checking whether a speci c element is contained in the set.

Creating a Set

Sets can be created by using the built-in set() function with an iterable object or a sequence
by placing the sequence inside curly braces, separated by ‘comma’.

Note – A set cannot have mutable elements like a list, set or dictionary, as its elements.

# Python program to demonstrate


# Creation of Set in Python

# Creating a Set
set1 = set()
print("Intial blank Set: ")
print(set1)

# Creating a Set with


# the use of a String
set1 = set("GeeksForGeeks")
print("\nSet with the use of String: ")
print(set1)

# Creating a Set with


# the use of Constructor
# (Using object to Store String)
String = 'GeeksForGeeks'
set1 = set(String)
print("\nSet with the use of an Object: " )
print(set1)

# Creating a Set with


# the use of a List
set1 = set(["Geeks", "For", "Geeks"])
print("\nSet with the use of List: ")
print(set1)
We use cookies to ensure you have the best browsing experience on our website. By using our Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Output:
https://www.geeksforgeeks.org/python-sets/?ref=lbp 1/12
8/18/2020 Python Sets - GeeksforGeeks

Intial blank Set:


set()

Set with the use of String:


{'e', 'r', 'k', 'o', 'G', 's', 'F'}

Set with the use of an Object:


{'r', 'o', 'e', 'F', 's', 'k', 'G'}

Set with the use of List:


{'Geeks', 'For'}

A set contains only unique elements but at the time of set creation, multiple duplicate values
can also be passed. Order of elements in a set is unde ned and is unchangeable. Type of
elements in a set need not be the same, various mixed up data type values can also be
passed to the set.

# Creating a Set with


# a List of Numbers
# (Having duplicate values)
set1 = set([1, 2, 4, 4, 3, 3, 3, 6, 5])
print("\nSet with the use of Numbers: ")
print(set1)

# Creating a Set with


# a mixed type of values
# (Having numbers and strings)
set1 = set([1, 2, 'Geeks', 4, 'For', 6, 'Geeks'])
print("\nSet with the use of Mixed Values")
print(set1)

We use cookies to ensure you have the best browsing experience on our website. By using our
Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Output:
https://www.geeksforgeeks.org/python-sets/?ref=lbp 2/12
8/18/2020 Python Sets - GeeksforGeeks

Set with the use of Numbers:


{1, 2, 3, 4, 5, 6}

Set with the use of Mixed Values


{1, 2, 4, 'Geeks', 6, 'For'}

Adding Elements to a Set

Using add() method

Elements can be added to the Set by using built-in add() function. Only one element at a time
can be added to the set by using add() method, loops are used to add multiple elements at a
time with the use of add() method.

Note – Lists cannot be added to a set as elements because Lists are not hashable whereas
Tuples can be added because tuples are immutable and hence Hashable.

# Python program to demonstrate


# Addition of elements in a Set

# Creating a Set
set1 = set()
print("Intial blank Set: ")
print(set1)

# Adding element and tuple to the Set


set1.add(8)
set1.add(9)
set1.add((6,7))
print("\nSet after Addition of Three elements: ")
print(set1)

# Adding elements to the Set


# using Iterator
for i in range(1, 6):
set1.add(i)
print("\nSet after Addition of elements from 1-5: ")
print(set1)

Output:

Intial blank Set:


set()

Set after Addition of Three elements:


{8, 9, (6, 7)}
We use cookies to ensure you have the best browsing experience on our website. By using our
Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy

https://www.geeksforgeeks.org/python-sets/?ref=lbp 3/12
8/18/2020 Python Sets - GeeksforGeeks

Set after Addition of elements from 1-5:


{1, 2, 3, (6, 7), 4, 5, 8, 9}

Using update() method

For addition of two or more elements Update() method is used. The update() method accepts
lists, strings, tuples as well as other sets as its arguments. In all of these cases, duplicate
elements are avoided.

# Python program to demonstrate


# Addition of elements in a Set

# Addition of elements to the Set


# using Update function
set1 = set([ 4, 5, (6, 7)])
set1.update([10, 11])
print("\nSet after Addition of elements using Update: ")
print(set1)

Output:

Set after Addition of elements using Update:


{10, 11, 4, 5, (6, 7)}

Accessing a Set

Set items cannot be accessed by referring to an index, since sets are unordered the items
has no index. But you can loop through the set items using a for loop, or ask if a speci ed
value is present in a set, by using the in keyword.

We use cookies to ensure you have the best browsing experience on our website. By using our
Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy

https://www.geeksforgeeks.org/python-sets/?ref=lbp 4/12
8/18/2020 Python Sets - GeeksforGeeks

# Python program to demonstrate


# Accessing of elements in a set

# Creating a set
set1 = set(["Geeks", "For", "Geeks"])
print("\nInitial set")
print(set1)

# Accessing element using


# for loop
print("\nElements of set: ")
for i in set1:
print(i, end=" ")

# Checking the element


# using in keyword
print("Geeks" in set1)

Output:

Initial set:
{'Geeks', 'For'}

Elements of set:
Geeks For

True

Removing elements from the Set

Using remove() method or discard() method

Elements can be removed from the Set by using built-in remove() function but a KeyError
arises if element doesn’t exist in the set. To remove elements from a set without KeyError,
use discard(), if the element doesn’t exist in the set, it remains unchanged.

# Python program to demonstrate


# Deletion of elements in a Set

# Creating a Set
set1 = set([1, 2, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12])
print("Intial Set: ")
print(set1)

# Removing
We elements
use cookies to fromtheSet
ensure you have best browsing experience on our website. By using our Got It !
#site,
using Remove() method
you acknowledge that you have read and understood our Cookie Policy & Privacy Policy

https://www.geeksforgeeks.org/python-sets/?ref=lbp 5/12
8/18/2020 Python Sets - GeeksforGeeks

set1.remove(5)
set1.remove(6)
print("\nSet after Removal of two elements: ")
print(set1)

# Removing elements from Set


# using Discard() method
set1.discard(8)
set1.discard(9)
print("\nSet after Discarding two elements: ")
print(set1)

# Removing elements from Set


# using iterator method
for i in range(1, 5):
set1.remove(i)
print("\nSet after Removing a range of elements: ")
print(set1)

Output:

Intial Set:
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}

Set after Removal of two elements:


{1, 2, 3, 4, 7, 8, 9, 10, 11, 12}

Set after Discarding two elements:


{1, 2, 3, 4, 7, 10, 11, 12}

Set after Removing a range of elements:


{7, 10, 11, 12}

Using pop() method

Pop() function can also be used to remove and return an element from the set, but it removes
only the last element of the set.

Note – If the set is unordered then there’s no such way to determine which element is
popped by using the pop() function.

# Python program to demonstrate


# Deletion of elements in a Set

# Creating a Set
set1 = set([1, 2, 3, 4, 5, 6,
We use cookies to 7,
ensure
8, you
9,have
10,the11,
best 12])
browsing experience on our website. By using our
Got It !
site, you acknowledge
print("Intial that you
Set: ")have read and understood our Cookie Policy & Privacy Policy
https://www.geeksforgeeks.org/python-sets/?ref=lbp 6/12
8/18/2020 Python Sets - GeeksforGeeks

print(set1)

# Removing element from the


# Set using the pop() method
set1.pop()
print("\nSet after popping an element: ")
print(set1)

Output:

Intial Set:
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}

Set after popping an element:


{2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}

Using clear() method

To remove all the elements from the set, clear() function is used.

#Creating a set
set1 = set([1,2,3,4,5])
print("\n Initial set: ")
print(set1)

# Removing all the elements from


# Set using clear() method
set1.clear()
print("\nSet after clearing all the elements: ")
print(set1)

Output:

Initial set:
{1, 2, 3, 4, 5}

Set after clearing all the elements:


set()

Frozen sets in Python are immutable objects that only support methods and operators that
produce a result without affecting the frozen set or sets to which they are applied. While
elements of a set can be modi ed at any time, elements of the frozen set remain the same
after creation.
If no parameters are passed, it returns an empty frozenset.
We use cookies to ensure you have the best browsing experience on our website. By using our
Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy

https://www.geeksforgeeks.org/python-sets/?ref=lbp 7/12
8/18/2020 Python Sets - GeeksforGeeks

# Python program to demonstrate


# working of a FrozenSet

# Creating a Set
String = ('G', 'e', 'e', 'k', 's', 'F', 'o', 'r')

Fset1 = frozenset(String)
print("The FrozenSet is: ")
print(Fset1)

# To print Empty Frozen Set


# No parameter is passed
print("\nEmpty FrozenSet: ")
print(frozenset())

Set Methods

FUNCTION DESCRIPTION

add() Adds an element to a set

remove() Removes an element from a set. If the element is not


present in the set, raise a KeyError

clear() Removes all elements form a set

copy() Returns a shallow copy of a set

pop() Removes and returns an arbitrary set element. Raise


KeyError if the set is empty

update() Updates a set with the union of itself and others

union() Returns the union of sets in a new set

difference() Returns the difference of two or more sets as a new


set

difference_update() Removes all elements of another set from this set

discard() Removes an element from set if it is a member. (Do


nothing if the element is not in set)

intersection()
We Returns
use cookies to ensure you have the best browsing the intersection
experience on our website.of
Bytwo
usingsets
our as a new set
Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy

https://www.geeksforgeeks.org/python-sets/?ref=lbp 8/12
8/18/2020 Python Sets - GeeksforGeeks

intersection_update() Updates the set with the intersection of itself and


another

isdisjoint() Returns True if two sets have a null intersection

issubset() Returns True if another set contains this set

issuperset() Returns True if this set contains another set

symmetric_difference() Returns the symmetric difference of two sets as a


new set

symmetric_difference_update() Updates a set with the symmetric difference of itself


and another

Recent Articles on Python Sets

Set Programs

Program to accept the strings which contains all vowels


Python program to nd common elements in three lists using sets
Find missing and additional values in two lists
Pairs of complete strings in two sets
Check whether a given string is Heterogram or not
Maximum and Minimum in a Set
Remove items from Set
Python Set difference to nd lost element from a duplicated array
Minimum number of subsets with distinct elements using Counter
Check if two lists have at-least one element common
Program to count number of vowels using sets in given string
Difference between two lists
Python set to check if string is panagram
Python set operations (union, intersection, difference and symmetric difference)
Concatenated string with uncommon characters in Python
Python dictionary, set and counter to check if frequencies can become same
Using Set() in Python Pangram Checking
Set update() in Python to do union of n arrays

Useful Links
We use cookies to ensure you have the best browsing experience on our website. By using our
Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Output of Python programs – Sets
https://www.geeksforgeeks.org/python-sets/?ref=lbp 9/12
8/18/2020 Python Sets - GeeksforGeeks

Recent Articles on Python Sets


Multiple Choice Questions – Python
All articles in Python Category

Recommended Posts:
Sets in Python
Python | remove() and discard() in Sets
Output of Python Programs | Set 24 (Sets)
Python | sympy.sets.open() method
Python | sympy.sets.Lopen() method
Python | sympy.sets.Ropen() method
Python Set | Pairs of complete strings in two sets
Python program to count number of vowels using sets in given string
Python program to nd common elements in three lists using sets
Cartesian Product of any number of sets
Reusable piece of python functionality for wrapping arbitrary blocks of code : Python
Context Managers
Python - Read blob object in python using wand library
Python | Index of Non-Zero elements in Python list
Python | PRAW - Python Reddit API Wrapper
MySQL-Connector-Python module in Python
Important differences between Python 2.x and Python 3.x with examples
Python | Merge Python key values to list
Reading Python
We use cookies File-Like
to ensure Objects
you have the bestfrom C | experience
browsing Python on our website. By using our Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy

https://www.geeksforgeeks.org/python-sets/?ref=lbp 10/12
8/18/2020 Python Sets - GeeksforGeeks

Python | Convert list to Python array


twitter-text-python (ttp) module - Python

Improved By : nikhilaggarwal3, Akanksha_Rai

Article Tags : Python Python-Built-in-functions python-set

Practice Tags : python-set

15

1.6
To-do Done
Based on 6 vote(s)

Feedback/ Suggest Improvement Improve Article

Please write to us at [email protected] to report any issue with the above content.

Writing code in comment? Please use ide.geeksforgeeks.org, generate link and share the link here.

Load Comments

5th Floor, A-118,


Sector-136, Noida, Uttar Pradesh - 201305
[email protected]

Company Learn
We use cookies to ensure you have the best browsing experience on our website. By using our
About Us Algorithms Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Careers Data Structures
https://www.geeksforgeeks.org/python-sets/?ref=lbp 11/12
8/18/2020 Python Sets - GeeksforGeeks
Ca ee s a a S uc u es
Privacy Policy Languages
Contact Us CS Subjects
Video Tutorials

Practice Contribute
Courses Write an Article
Company-wise Write Interview Experience
Topic-wise Internships
How to begin? Videos

@geeksforgeeks , Some rights reserved

We use cookies to ensure you have the best browsing experience on our website. By using our
Got It !
site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy

https://www.geeksforgeeks.org/python-sets/?ref=lbp 12/12

You might also like