一:python官方文档
https://docs.python.org/3.6/library/stdtypes.html#set-types-set-frozenset
二:集合概念
一:add()
会改变原有集合
1 >>> s = set(‘HackerRank‘) 2 >>> s.add(‘H‘) 3 >>> print s 4 set([‘a‘, ‘c‘, ‘e‘, ‘H‘, ‘k‘, ‘n‘, ‘r‘, ‘R‘]) 5 >>> print s.add(‘HackerRank‘)#添加后返回none 6 None 7 >>> print s 8 set([‘a‘, ‘c‘, ‘e‘, ‘HackerRank‘, ‘H‘, ‘k‘, ‘n‘, ‘r‘, ‘R‘])
二:pop(),discard(),remove()
set.pop()
1 >>> s = set([1]) 2 >>> print s.pop() 3 1 4 >>> print s 5 set([]) 6 >>> print s.pop() 7 KeyError: pop from an empty set
set.remove()
1 >>> s = set([1, 2, 3, 4, 5, 6, 7, 8, 9]) 2 >>> s.remove(5) 3 >>> print s 4 set([1, 2, 3, 4, 6, 7, 8, 9]) 5 >>> print s.remove(4)#默认返回None 6 None 7 >>> print s 8 set([1, 2, 3, 6, 7, 8, 9]) 9 >>> s.remove(0) 10 KeyError: 0
set.discard()
1 >>> s = set([1, 2, 3, 4, 5, 6, 7, 8, 9]) 2 >>> s.discard(5) 3 >>> print s 4 set([1, 2, 3, 4, 6, 7, 8, 9]) 5 >>> print s.discard(4) 6 None 7 >>> print s 8 set([1, 2, 3, 6, 7, 8, 9]) 9 >>> s.discard(0) 10 >>> print s 11 set([1, 2, 3, 6, 7, 8, 9])
三:intersetcion(),difference(),unoin(),交集,差集,并集,
不改变原有集合
set.intersection()
1 >>> s = set("Hacker") 2 >>> print s.intersection("Rank") 3 set([‘a‘, ‘k‘]) 4 5 6 >>> print s.intersection([‘R‘, ‘a‘, ‘n‘, ‘k‘]) 7 set([‘a‘, ‘k‘]) 8 9 >>> print s.intersection(enumerate([‘R‘, ‘a‘, ‘n‘, ‘k‘])) 10 set([]) 11 12 >>> print s.intersection({"Rank":1}) 13 set([]) 14 15 >>> s & set("Rank") 16 set([‘a‘, ‘k‘])
set.difference()
1 #set1有的而set2没有的元素 2 >>> s = set("Hacker") 3 >>> print s.difference("Rank") 4 set([‘c‘, ‘r‘, ‘e‘, ‘H‘]) 5 6 >>> print s.difference(set([‘R‘, ‘a‘, ‘n‘, ‘k‘])) 7 set([‘c‘, ‘r‘, ‘e‘, ‘H‘]) 8 9 >>> print s.difference([‘R‘, ‘a‘, ‘n‘, ‘k‘]) 10 set([‘c‘, ‘r‘, ‘e‘, ‘H‘]) 11 12 >>> print s.difference(enumerate([‘R‘, ‘a‘, ‘n‘, ‘k‘])) 13 set([‘a‘, ‘c‘, ‘r‘, ‘e‘, ‘H‘, ‘k‘]) 14 15 >>> print s.difference({"Rank":1}) 16 set([‘a‘, ‘c‘, ‘e‘, ‘H‘, ‘k‘, ‘r‘]) 17 18 >>> s - set("Rank") 19 set([‘H‘, ‘c‘, ‘r‘, ‘e‘])
set.unoin()
1 >>> s = set("Hacker") 2 >>> print s.union("Rank") 3 set([‘a‘, ‘R‘, ‘c‘, ‘r‘, ‘e‘, ‘H‘, ‘k‘, ‘n‘]) 4 5 >>> print s.union(set([‘R‘, ‘a‘, ‘n‘, ‘k‘])) 6 set([‘a‘, ‘R‘, ‘c‘, ‘r‘, ‘e‘, ‘H‘, ‘k‘, ‘n‘]) 7 8 >>> print s.union([‘R‘, ‘a‘, ‘n‘, ‘k‘]) 9 set([‘a‘, ‘R‘, ‘c‘, ‘r‘, ‘e‘, ‘H‘, ‘k‘, ‘n‘]) 10 11 >>> print s.union(enumerate([‘R‘, ‘a‘, ‘n‘, ‘k‘])) 12 set([‘a‘, ‘c‘, ‘r‘, ‘e‘, (1, ‘a‘), (2, ‘n‘), ‘H‘, ‘k‘, (3, ‘k‘), (0, ‘R‘)]) 13 14 >>> print s.union({"Rank":1}) 15 set([‘a‘, ‘c‘, ‘r‘, ‘e‘, ‘H‘, ‘k‘, ‘Rank‘]) 16 17 >>> s | set("Rank") 18 set([‘a‘, ‘R‘, ‘c‘, ‘r‘, ‘e‘, ‘H‘, ‘k‘, ‘n‘])
原文:https://www.cnblogs.com/Mr-l/p/10767637.html