因为set存储的是一组不重复的无序元素,所以,更新set主要作两件事:ide
一是把新的元素添加到set中,二是把已有元素从set中删除。spa
添加元素时,用set的add()方法:code
>>> s = set([1, 2, 3]) >>> s.add(4) >>> print s set([1, 2, 3, 4])
若是添加的元素已经存在于set中,add()不会报错,可是不会加进去了:ip
>>> s = set([1, 2, 3]) >>> s.add(3) >>> print s set([1, 2, 3])
删除set中的元素时,用set的remove()方法:rem
>>> s = set([1, 2, 3, 4]) >>> s.remove(4) >>> print s set([1, 2, 3])
若是删除的元素不存在set中,remove()会报错:it
>>> s = set([1, 2, 3]) >>> s.remove(4) Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 4
因此用add()能够直接添加,而remove()前须要判断。io
针对下面的set,给定一个list,对list中的每个元素,若是在set中,就将其删除,若是不在set中,就添加进去。ast
s = set(['Adam', 'Lisa', 'Paul']) L = ['Adam', 'Lisa', 'Bart', 'Paul']
判断元素是否在set中,使用in操做符。class
参考代码:module
s = set(['Adam', 'Lisa', 'Paul']) L = ['Adam', 'Lisa', 'Bart', 'Paul'] for name in L: if name in s: s.remove(name) else: s.add(name) print s