Saturday, 1 October 2022

Set in Python

Sets are an unordered collection of unique values. A single set contains values of any immutable data type.


CREATING SETS


>> myset = {1, 2} # Directly assigning values to a set

>> myset = set()  # Initializing a set

>> myset = set(['a', 'b']) # Creating a set from a list

>> myset

{'a', 'b'}


MODIFYING SETS


Using the add() function:


>> myset.add('c')

>> myset

{'a', 'c', 'b'}

>> myset.add('a') # As 'a' already exists in the set, nothing happens

>> myset.add((5, 4))

>> myset

{'a', 'c', 'b', (5, 4)}


Using the update() function:


>> myset.update([1, 2, 3, 4]) # update() only works for iterable objects

>> myset

{'a', 1, 'c', 'b', 4, 2, (5, 4), 3}

>> myset.update({1, 7, 8})

>> myset

{'a', 1, 'c', 'b', 4, 7, 8, 2, (5, 4), 3}

>> myset.update({1, 6}, [5, 13])

>> myset

{'a', 1, 'c', 'b', 4, 5, 6, 7, 8, 2, (5, 4), 13, 3}


REMOVING ITEMS


Both the discard() and remove() functions take a single value as an argument and removes that value from the set. If that value is not present, discard() does nothing, but remove() will raise a KeyError exception.


>> myset.discard(10)

>> myset

{'a', 1, 'c', 'b', 4, 5, 7, 8, 2, 12, (5, 4), 13, 11, 3}

>> myset.remove(13)

>> myset

{'a', 1, 'c', 'b', 4, 5, 7, 8, 2, 12, (5, 4), 11, 3}



COMMON SET OPERATIONS Using union(), intersection() and difference() functions.


>> a = {2, 4, 5, 9}

>> b = {2, 4, 11, 12}

>> a.union(b) # Values which exist in a or b

{2, 4, 5, 9, 11, 12}

>> a.intersection(b) # Values which exist in a and b

{2, 4}

>> a.difference(b) # Values which exist in a but not in b

{9, 5}


The union() and intersection() functions are symmetric methods:


>> a.union(b) == b.union(a)

True

>> a.intersection(b) == b.intersection(a)

True

>> a.difference(b) == b.difference(a)

False



Source : HackerRank

No comments:

Post a Comment