因爲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