## Tuesday, March 19, 2013

### Sets in python

A set is an unordered collection of zero or more immutable Python data objects. Sets do not allow duplicates and are written as comma-delimited values enclosed in curly braces. The empty set is represented by set(). Sets are heterogeneous, and the collection can be assigned to a variable as below.
 ```1 2 3 4 5 6``` ```>>> {3,6,"cat",4.5,False} {False, 4.5, 3, 6, 'cat'} >>> mySet = {3,6,"cat",4.5,False} >>> mySet {False, 4.5, 3, 6, 'cat'} >>> ```
Even though sets are not considered to be sequential, they do support a few of the familiar operations presented earlier. Table  reviews these operations and the following session gives examples of their use.
Operation Name Operator Explanation
membership in Set membership
length len Returns the cardinality of the set
| aset | otherset Returns a new set with all elements from both sets
& aset & otherset Returns a new set with only those elements common to both sets
- aset - otherset Returns a new set with all items from the first set not in second
<= aset <= otherset Asks whether all elements of the first set are in the second
Operations on a Set in Python
 ```1 2 3 4 5 6 7 8 9``` ```>>> mySet {False, 4.5, 3, 6, 'cat'} >>> len(mySet) 5 >>> False in mySet True >>> "dog" in mySet False >>> ```
Sets support a number of methods that should be familiar to those who have worked with them in a mathematics setting. Table  provides a summary. Examples of their use follow. Note that union, intersection, issubset, and difference all have operators that can be used as well.
Method Name Use Explanation
union aset.union(otherset) Returns a new set with all elements from both sets
intersection aset.intersection(otherset) Returns a new set with only those elements common to both sets
difference aset.difference(otherset) Returns a new set with all items from first set not in second
issubset aset.issubset(otherset) Asks whether all elements of one set are in the other
remove aset.remove(item) Removes item from the set
pop aset.pop() Removes an arbitrary element from the set
clear aset.clear() Removes all elements from the set

 aset.clear() Removes all elements from the set
Methods Provided by Sets in Python
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33``` ```>>> mySet {False, 4.5, 3, 6, 'cat'} >>> yourSet = {99,3,100} >>> mySet.union(yourSet) {False, 4.5, 3, 100, 6, 'cat', 99} >>> mySet | yourSet {False, 4.5, 3, 100, 6, 'cat', 99} >>> mySet.intersection(yourSet) {3} >>> mySet & yourSet {3} >>> mySet.difference(yourSet) {False, 4.5, 6, 'cat'} >>> mySet - yourSet {False, 4.5, 6, 'cat'} >>> {3,100}.issubset(yourSet) True >>> {3,100}<=yourSet True >>> mySet.add("house") >>> mySet {False, 4.5, 3, 6, 'house', 'cat'} >>> mySet.remove(4.5) >>> mySet {False, 3, 6, 'house', 'cat'} >>> mySet.pop() False >>> mySet {3, 6, 'house', 'cat'} >>> mySet.clear() >>> mySet set() >>> ```
From:http://interactivepython.org/courselib/static/pythonds/Introduction/introduction.html

Learn python for fun.The popular blog with questions and answers to the python.Solutions to facebookhackercup,codejam,codechef.The fun way to learn python with me.Building some cool apps.