Python's set is similar to other languages. It is an unordered set of non-repeating elements. Its basic functions include relationship testing and elimination of duplicate elements. Set objects also support union, intersection, difference and sysmmetric Mathematical operations such as difference (symmetric difference set)
sets support x in set, len(set), and for x in set. As an unordered collection, sets do not record element positions or insertion points. Therefore, sets do not support indexing, slicing, or other sequence-like operations.
Let’s use a few examples to briefly explain
Common operations 1
In [2]: a = set() In [3]: a Out[3]: set() In [4]: type(a) Out[4]: set In [5]: b = set([1, 3]) In [6]: b Out[6]: {1, 3} In [7]: type(b) Out[7]: set In [8]: b.update(2) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-8-d51e2fe4c50a> in <module>() ----> 1 b.update(2) TypeError: 'int' object is not iterable In [9]: b.update({2}) In [10]: b Out[10]: {1, 2, 3} In [11]: b.update([4]) In [12]: b Out[12]: {1, 2, 3, 4} In [13]: a.di a.difference a.difference_update a.discard In [13]: a.dif a.difference a.difference_update In [13]: a.difference(b) Out[13]: set() In [14]: a Out[14]: set() In [15]: b.difference(a) Out[15]: {1, 2, 3, 4} In [16]:
Common operations 2
In [16]: a.add({1, 3}) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-16-98cdf4d0875e> in <module>() ----> 1 a.add({1, 3}) TypeError: unhashable type: 'set' In [17]: a.add(4) In [18]: a Out[18]: {4} In [19]: a.issu a.issubset a.issuperset In [19]: a.issubset(b) Out[19]: True In [20]: a.remove(4) In [21]: a Out[21]: set() In [22]: a.union(b) Out[22]: {1, 2, 3, 4} In [23]: a Out[23]: set() In [24]: b Out[24]: {1, 2, 3, 4} In [25]: b.pop() Out[25]: 1 In [26]: a.copy(b) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-26-9e8a5f057ffd> in <module>() ----> 1 a.copy(b) TypeError: copy() takes no arguments (1 given) In [27]: a.copy() Out[27]: set() In [28]: c = a.copy() In [29]: c Out[29]: set() In [30]: a Out[30]: set() In [31]: a.add({234}) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-31-6073e02d68a9> in <module>() ----> 1 a.add({234}) TypeError: unhashable type: 'set' In [32]: a.add(234) In [33]: c Out[33]: set() In [34]: a Out[34]: {234}
Common operations 3
In [35]: a.clear() In [36]: a Out[36]: set() In [39]: a = {1} In [40]: b = {1, 2} In [41]: a.intersection(b) Out[41]: {1} In [43]: a Out[43]: {1} In [44]: b = {1, 2, 3} In [45]: a.union(b) Out[45]: {1, 2, 3} In [45]: a.union(b) Out[45]: {1, 2, 3} In [46]: a & b Out[46]: {1} In [47]: a ^ b Out[47]: {2, 3} In [48]: a - b Out[48]: set() In [49]: b - a Out[49]: {2, 3} In [50]: a > b Out[50]: False In [51]: b > a Out[51]: True In [52]: a == b Out[52]: False In [53]: a != b Out[53]: True